この質問には誰かが以前に答えたに違いないと思いますが、スタックオーバーフローに関する答えが見つかりません!
このようなデータフレームresult
があり、すべての値を削除したい以下 10
>>> result
Name Value Date
189 Sall 19.0 11/14/15
191 Sam 10.0 11/14/15
192 Richard 21.0 11/14/15
193 Ingrid 4.0 11/14/15
このコマンドは機能し、10であるすべての値を削除します。
df2 = result[result['Value'] != 10]
しかし、<=修飾子を追加しようとすると、エラーメッセージSyntaxError: invalid syntax
df3 = result[result['Value'] ! <= 10]
おそらく本当に簡単な解決策があるように感じます。前もって感謝します!
これの代わりに
df3 = result[result['Value'] ! <= 10]
つかいます
df3 = result[~(result['Value'] <= 10)]
それが動作します。 OR単純に使用
df3 = result[result['Value'] > 10]
pythonは!
を使用して否定しません。 not
を使用します。 この回答を参照
この特定の例では、!=
はnot equal
を意味する2文字の文字列です。 ==
の否定ではありません。
オプション1
これは、NaN
がない限り機能するはずです。
result[result['Value'] > 10]
オプション2
単項演算子~
を使用して、ブール系列を否定します
result[~(result['Value'] <= 10)]