2016-08-14 7 views
-1

私が期待される出力は次のようにする必要があります果物を持っているすべての行AppleまたはOrange"フルーツ"列にある複数の値に基づいてすべての行を削除する方法

をドロップしたい、この単純なデータフレーム

Num Fruit Price 
1  Apple 1.00 
1  Apple 1.00 
2  Apple 1.50 
2  Orange 1.50 
3  Orange 1.00 
3  Banana 0.50 

を持っている:私はしようとした

Num Fruit Price 
3 Banana 0.50 

次の構文を実行しますが、何とかデータフレーム内のすべての行を削除しませんでした

>>> df.drop(df.Fruit.isin(["Apple","Orange"])) 
Fruit Num Price 
2 Apple 2 1.50 
3 Orange 2 1.50 
4 Orange 3 1.00 
5 Banana 3 0.50 

これを解決するにはどうすればよいですか?

答えて

4

削除する行のインデックスを渡す必要がありますが、ブール値の配列を渡しています。あなたはそれを変更することができます。

df.drop(df[df.Fruit.isin(["Apple", "Orange"])].index) 
Out: 
    Num Fruit Price 
5 3 Banana 0.5 

それとも、リンゴやオレンジ色を含まない行を選択することができます:あなたは素晴らしいです

df[~(df.Fruit.isin(["Apple", "Orange"]))] 
Out: 
    Num Fruit Price 
5 3 Banana 0.5 
+0

を! – MEhsan

関連する問題