DataFrameのindexごとの, 上位N個の列を抽出したい
df =
INDEX 番号 平均
201907010601 4 0.411331
201907010601 16 0.472256
201907010601 15 0.758492
201907010601 10 0.704865
201907010601 11 0.722583
201907010601 7 0.502218
201907010601 5 0.422376
201907010601 9 0.142984
201907010601 13 0.166259
201907010601 1 0.063561
201907010601 3 0.170293
201907010601 8 0.105570
201907010601 14 0.186378
201907010601 12 0.058321
201907010601 6 0.103821
201907010601 2 0.241742
201905010402 2 0.470611
201905010402 8 0.783678
201905010402 1 0.298781
201905010402 15 0.302518
201905010402 7 0.710182
201905010402 4 0.175024
201905010402 11 0.402872
201905010402 5 0.463226
201905010402 13 0.373702
201905010402 9 0.043652
201905010402 6 0.329344
201905010402 3 0.331674
201905010402 12 0.203614
201905010402 10 0.094564
201905010402 16 0.200508
201905010402 14 0.093363
201907010606 1 0.794446
201907010606 6 0.801182
201907010606 5 0.849760
201907010606 4 0.804972
201907010606 15 0.240848
201907010606 16 0.273469
201907010606 10 0.327639
201907010606 2 0.409137
201907010606 9 0.183374
201907010606 12 0.485936
201907010606 3 0.258582
201907010606 8 0.786969
201907010606 13 0.323141
201907010606 7 0.170900
201907010606 14 0.166577
201907010606 11 0.029370
201907010604 14 0.773029
201907010604 11 0.659245
201907010604 5 0.572293
201907010604 7 0.834579
201907010604 6 0.235780
201907010604 2 0.217652
201907010604 13 0.684847
201907010604 3 0.254697
201907010604 4 0.404180
201907010604 12 0.215965
201907010604 9 0.409363
201907010604 1 0.362527
201907010604 10 0.367208
発生している問題
上記のような, DataFrameからINDEXごとに「平均」の高い上位N個の列を抽出したいのですが, やり方がわかりません.
理想は, 「平均」の上位3個をINDEXごとに抽出して,
df =
INDEX 番号 平均
201907010601 15 0.758492
201907010601 10 0.704865
201907010601 11 0.722583
201905010402 2 0.470611
201905010402 8 0.783678
201905010402 7 0.710182
201907010606 6 0.801182
201907010606 5 0.849760
201907010606 4 0.804972
201907010604 14 0.773029
201907010604 11 0.659245
201907010604 7 0.834579
このような出力にしたいと考えています.
試したこと
INDEXごとの処理だということで, groupby(level=0).head(N)のように, 処理するのかと考えたのですが, sortや上位N個の抽出ができませんでした.
出力の結果は, sortができていなくても, 上位N個が抽出できていれば大丈夫です.
素人質問で申し訳ありませんが, 御回答よろしくお願いいたします.
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/03 17:45