正しいタイトルではわかりません。しかし、私はデータフレームから列を取り出し、上位5つの結果を示す必要があります。列は、整数とn/aの結果の組み合わせです。パンダ注文列に値がありません
regiona col1
a n/a
a 1
a 200
b 208
b 400
b 560
b 600
c 800
c 1120
c 1200
c 1680
d n/a
d n/a
それで実行します:私はそのように私は別の列でこれを使用することができ、基本的な機能を作成し
import pandas as pd
df = pd.read_csv('test_data.csv')
、このように構成:
def max_search(indicator):
displaced_count = df[df[indicator] != 'n/a']
table = displaced_count.sort_values([indicator], ascending=[False])
return table.head(5)
例として、私は基本的なデータフレームを作成します
でも実行したとき
max_search('col1')
それは返します
- はN/A valyes
- 戻り上位5つの値をフィルタリング:は
regiona col1 7 c 800 6 b 600 5 b 560 4 b 400 3 b 208
だから、私は機能がやるべきことだと思うのステップである800よりも大きな何かを逃します。
しかし、800以上のものは返されません。非常に明白な何かが欠けていますか?