Python 基于条件筛选数据帧-NaN值失败
我正在尝试根据标准(Python 2.7)过滤熊猫数据帧: 但是序列数据['a']中的一些值为NaN,我得到一个错误:Python 基于条件筛选数据帧-NaN值失败,python,python-2.7,pandas,Python,Python 2.7,Pandas,我正在尝试根据标准(Python 2.7)过滤熊猫数据帧: 但是序列数据['a']中的一些值为NaN,我得到一个错误: 类型比较无效 我如何可以忽略它,并将NaN视为不符合标准,从而将其过滤掉 谢谢 您可以尝试: 样本: print data a 0 bbb 1 bbb 2 bbb 3 bbb 4 bbb 5 bbb 6 bbb 7 NaN 8 a 9 a 10 bbb print data[(data['a']=='bbb') &
类型比较无效
我如何可以忽略它,并将NaN视为不符合标准,从而将其过滤掉
谢谢 您可以尝试:
样本:
print data
a
0 bbb
1 bbb
2 bbb
3 bbb
4 bbb
5 bbb
6 bbb
7 NaN
8 a
9 a
10 bbb
print data[(data['a']=='bbb') & (data['a'].notnull())]
a
0 bbb
1 bbb
2 bbb
3 bbb
4 bbb
5 bbb
6 bbb
10 bbb
重新指定列类型,如下所示:
df['a'] = df['a'].astype('O')
这应该可以解决问题
print data
a
0 bbb
1 bbb
2 bbb
3 bbb
4 bbb
5 bbb
6 bbb
7 NaN
8 a
9 a
10 bbb
print data[(data['a']=='bbb') & (data['a'].notnull())]
a
0 bbb
1 bbb
2 bbb
3 bbb
4 bbb
5 bbb
6 bbb
10 bbb
df['a'] = df['a'].astype('O')