#としじのPS その9 ~発展問題1:CSVファイルの集計~
#としじのPS その9 ~発展問題1~
こちらの記事を拝見しまして、やってみたくなったのでやってみました。
こちらではGoLangで実装していますね。
やっぱりPSは短く書けますね!
結果です(画像)
コードです
cls; cd C:\PowerShell
$csv = ipcsv .\ps999.csv -Encoding Default | select -First 10000
$top10 = $csv `
| group player_id `
| select `
@{Name="rnk"; Expression={}}, `
@{Name="pid"; Expression={$_.name}}, `
@{Name="ave"; Expression={[int]($_.group | measure -Average score).Average}}, `
@{Name="cnt"; Expression={($_.group | measure).Count}} `
| sort ave -Descending `
| select -First 10 `
$rnkCnt = 0
0..($top10.Count-1) `
| % {
$top10[$_].rnk = ++$rnkCnt
if($top10[$_-1].ave -eq $top10[$_].ave){$top10[$_].rnk = $top10[$_-1].rnk}
}
$top10
僕が適当に作ったサンプルのCSVです
もっといい書き方があれば知りたいです。
誰か教えて←
この記事が気に入ったらサポートをしてみませんか?