Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 筛选熊猫中的行,条件为False,但包含行_Python_Pandas_Filter - Fatal编程技术网

Python 筛选熊猫中的行,条件为False,但包含行

Python 筛选熊猫中的行,条件为False,但包含行,python,pandas,filter,Python,Pandas,Filter,我有一个Pandas dataframe v0.25.3和Python3.6,我正在尝试对符合特定条件的行执行操作。我已经做过几百次了,但现在我有了一种奇怪的行为,我无法理解。具体来说,我有两个条件,我只想捕获两个条件都为真的行,但我在结果中得到两个条件都为假的行 比如说, print(data.loc[1,"var1"] != None) print(data.loc[1,"var2"] != None) 返回False和True,但当我运行 thisData1 = data.loc[((d

我有一个Pandas dataframe v0.25.3和Python3.6,我正在尝试对符合特定条件的行执行操作。我已经做过几百次了,但现在我有了一种奇怪的行为,我无法理解。具体来说,我有两个条件,我只想捕获两个条件都为真的行,但我在结果中得到两个条件都为假的行

比如说,

print(data.loc[1,"var1"] != None)
print(data.loc[1,"var2"] != None)
返回False和True,但当我运行

thisData1 = data.loc[((data["var1"] != None) & (data["var2"] != None))]
print(thisData1.head())
第1行仍然在那里…所有的数据仍然在那里!如果我使用没有.loc的旧样式,我会得到相同的结果。第0行在那里,它们都是无的。而且,当我跑步的时候

print(len(data[data['var1'] != None]))
即使printdata.loc[1,var1]!=无=>False

这里的一切似乎都符合正确的方式,例如,看,它通常是有效的,但我看不出我在这种情况下做错了什么。有谁能发现我的错误或推荐一种不同/更安全的方法来运行这些过滤器吗?如果问题是我的数据集,我应该检查什么?

使用notnull代替!=没有


请添加一些样本数据进行复制。谢谢。我找到了一个使用isinstancex,str来解决我眼前问题的方法,所以我认为问题出在None上,但我一般不知道正确的方法…现在我知道了。
thisData1 = data[data["var1"].notnull() & data["var2"].notnull()]