gpt4 book ai didi

python - pandas 使用查询函数检查列是否为空

转载 作者:太空狗 更新时间:2023-10-29 20:40:22 25 4
gpt4 key购买 nike

我有 pandas 数据框,我想在其上执行带有 isnull() 或非 isnull() 条件的查询函数:

In [67]: df_data = pd.DataFrame({'a':[1,20,None,40,50]})
In [68]: df_data
Out[68]: a
0 1.0
1 20.0
2 NaN
3 40.0
4 50.0

如果我使用这个命令:

df_data.query('a isnull', engine='python')

或者这个命令:

df_data.query('a isnull()', engine='python')

我得到一个错误:

In [75]: df_data.query('a isnull', engine='python')  
File "<unknown>", line 1 a isnull
SyntaxError: invalid syntax

In [76]: df_data.query('a isnull()', engine='python')
File "<unknown>", line 1 a isnull ()
SyntaxError: invalid syntax

正确的做法是什么?

谢谢。

最佳答案

使用:

a = df_data.query('a.isnull()', engine='python')
print (a)
a
2 NaN

b = df_data.query('a.notnull()', engine='python')
print (b)
a
0 1.0
1 20.0
3 40.0
4 50.0

您还可以使用逻辑 NaN != NaN:

a = df_data.query('a != a')
print (a)
a
2 NaN

b = df_data.query('a == a')
print (b)
a
0 1.0
1 20.0
3 40.0
4 50.0

关于python - pandas 使用查询函数检查列是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46021195/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com