删除 python 中小于特定值的行
Remove rows in python less than a certain value
我觉得这个问题以前肯定有人回答过,但是我在stack overflow上找不到答案!
我有一个看起来像这样的数据框 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]
我觉得可能有一个非常简单的解决方案。提前致谢!
python 不使用 !
取反。它使用 not
。 See this answer
在此特定示例中,!=
是一个包含两个字符的字符串,表示 not equal
。它不是 ==
.
的否定
选项 1
这应该有效,除非你有 NaN
result[result['Value'] > 10]
选项 2
使用一元运算符 ~
对布尔级数取反
result[~(result['Value'] <= 10)]
而不是这个
df3 = result[result['Value'] ! <= 10]
使用
df3 = result[~(result['Value'] <= 10)]
它会起作用的。
或者简单地使用
df3 = result[result['Value'] > 10]
我有另一个建议,可能会有所帮助
df3 = result.drop(result[result['Value'] < 10].index, inplace = True)
还有df.query()
:
result.query('Value > 10')
Name Value Date
189 Sall 19.0 11/14/15
191 Sam 10.0 11/14/15
192 Richard 21.0 11/14/15
我觉得这个问题以前肯定有人回答过,但是我在stack overflow上找不到答案!
我有一个看起来像这样的数据框 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]
我觉得可能有一个非常简单的解决方案。提前致谢!
python 不使用 !
取反。它使用 not
。 See this answer
在此特定示例中,!=
是一个包含两个字符的字符串,表示 not equal
。它不是 ==
.
选项 1
这应该有效,除非你有 NaN
result[result['Value'] > 10]
选项 2
使用一元运算符 ~
对布尔级数取反
result[~(result['Value'] <= 10)]
而不是这个
df3 = result[result['Value'] ! <= 10]
使用
df3 = result[~(result['Value'] <= 10)]
它会起作用的。 或者简单地使用
df3 = result[result['Value'] > 10]
我有另一个建议,可能会有所帮助
df3 = result.drop(result[result['Value'] < 10].index, inplace = True)
还有df.query()
:
result.query('Value > 10')
Name Value Date
189 Sall 19.0 11/14/15
191 Sam 10.0 11/14/15
192 Richard 21.0 11/14/15