2020/08/22 #練習用データでグルーピングの練習
皆様おはようございます、
#猫でもできるPowerShell(備忘録)
#練習用データでグルーピングの練習
<#
元ネタ
https://resas.go.jp/municipality-surplus/#
企業活動マップ>企業情報>黒字赤字企業比率
#>
$t=
ipcsv "~\Downloads\municipality-surplus_20190129\municipality-surplus_20190129\企業活動_企業情報_黒字赤字企業比率_都道府県_大分類.csv"
-en default |
Group-Object 集計年,産業大分類CD,産業大分類名
$t |%{ $_.name;
$_.group |Measure-Object -av 黒字企業割合 |select property,average } |FL
2012, A, 農業,林業
Property : 黒字企業割合
Average : 0.643787234042553
2012, B, 漁業
Measure-Object : 入力オブジェクト "X" が数値ではありません。
発生場所 行:5 文字:11
+ $_.group |Measure-Object -av 黒字企業割合 |select property,average }|fl
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidType: (X:String)
[Measure-Object], PSInvalidOperati
onException
+ FullyQualifiedErrorId :
NonNumericInputObject,Microsoft.PowerShell.Commands.Measur
eObjectCommand
Property : 黒字企業割合
Average :
# エラーが出たため修正
$t=
Get-Content "~\Downloads\municipality-surplus_20190129\municipality-surplus_20190129\企業活動_企業情報_黒字赤字企業比率_都道府県_大分類.csv"
$t=$t.Replace('X,X','0,0') |ConvertFrom-Csv |
Group-Object 集計年,産業大分類CD,産業大分類名
$t |%{$_.name;
$_.group |Measure-Object -av 黒字企業割合 |select property,average } |FL
2012, A, 農業,林業
Property : 黒字企業割合
Average : 0.643787234042553
2012, B, 漁業
Property : 黒字企業割合
Average : 0.601744680851064
:
:
2016, P, 医療,福祉
Property : 黒字企業割合
Average : 0.819489361702128
2016, Q, 複合サービス事業
Property : 黒字企業割合
Average : 0.864553191489361
2016, R, サービス業(他に分類されないもの)
Property : 黒字企業割合
Average : 0.776872340425532
入力オブジェクト "X" とは何のこっちゃと思いましたが、
元ネタのCSV上で対象になるデータが無いと『X,X』で表示されるようです。
そのため、Get-Content と Replaceメソッドを使って『X,X』を『0,0』に置き換えた上で
集計年,大分類 によるグルーピングをしてみました
ではまた;