2016-09-14 5 views
2

私は2列のデータフレームを持っています。 2番目の列はわずかな値の1つです。私は、その列が特定の値を持つ行だけが含まれるデータフレームを返すメソッドを作成したいと思います。ilocでフィルターする方法

def filterOnName(df1): 
    d1columns = df1.columns 
    return df1[df1[d1columns[1]] == "Jimmy"] 

が、それは非常に複雑なしないようだ。

は、私がこの本のコードで働いていましたか?私はilocと呼ばれるパンダの方法があると思いますが、これはこのabitをきれいにするはずですが、実装に問題があります。私が間違っていることを説明できますか?

def filterOnName(df1): 
    return df1[df1.iloc[1] == "Jimmy"] 

ありがとうございました!

+3

これを試すことができますか? 'df1 [df1.iloc [:, 1] ==" Jimmy "]' – ayhan

+0

は魅力的でした!ありがとう –

答えて

3

.ilocの最初の引数は行です。第二のカラムを取得するには、必要があります::は、「すべての行」を意味

df.iloc[:, 1] 

関連する問題