Pandas 如何使用熊猫来保持真实和无价值?

Pandas 如何使用熊猫来保持真实和无价值?,pandas,dataframe,python-3.7,Pandas,Dataframe,Python 3.7,我有一个数据帧 import pandas as pd data = {'a': [1,2,3,None,4,None,2,4,5,None],'b':[6,6,6,'NaN',4,'NaN',11,11,11,'NaN']} df = pd.DataFrame(data) condition = (df['a']>2) | (df['a'] == None) print(df[condition]) a b 0 1.0 6 1 2.0 6 2

我有一个数据帧

import pandas as pd
data = {'a': [1,2,3,None,4,None,2,4,5,None],'b':[6,6,6,'NaN',4,'NaN',11,11,11,'NaN']}
df = pd.DataFrame(data)
condition = (df['a']>2) | (df['a'] == None)
print(df[condition])

     a    b
  0  1.0    6
  1  2.0    6
  2  3.0    6
  3  NaN  NaN
  4  4.0    4
  5  NaN  NaN
  6  2.0   11
  7  4.0   11
  8  5.0   11
  9  NaN  NaN
在这里,我必须保留条件即将实现的地方,而在没有条件的地方,我也要保留这些行

预期产出为:

      a    b
  2  3.0    6
  3  NaN  NaN
  4  4.0    4
  5  NaN  NaN
  7  4.0   11
  8  5.0   11
  9  NaN  NaN

提前感谢

您可以使用另一个
|
或条件(注意:请参阅@ALlolz的评论,您不应该将一个系列与
np.nan
进行比较)



您可以使用另一个
|
或条件(注意:请参阅@ALlolz的评论,您不应该将一个系列与
np.nan
进行比较)



None
np.NaN
不同,因此
None==np.NaN
False
。更深入的参考:。虽然
None==None
True
熊猫处理系列比较时与None不同。
None
np.NaN
不同,因此
None==np.NaN
False
。更深入的参考:。虽然
None==None
True
pandas处理序列比较时与None不同。
condition = (df['a']>2) | (df['a'].isna())
df[condition]
     a    b
2  3.0    6
3  NaN  NaN
4  4.0    4
5  NaN  NaN
7  4.0   11
8  5.0   11
9  NaN  NaN