过滤熊猫数据帧并避免使用nan

时间:2015-12-14 16:56:44

标签: python pandas

好的,我有这个pandas数据帧

import pandas
dfp=pandas.DataFrame([5,10,1,7,13,4,5,7,8,10,11,3])

我想创建第二个数据框,其中行的值大于5,因此:

dfp2=dfp[dfp>5]

我的问题是我得到了这个结果:

    0
0   NaN
1   10
2   NaN
3   7
4   13
5   NaN
6   NaN
7   7
8   8
9   10
10  11
11  NaN

我想要的是另一个结果:

    0
0   10
1   7
2   13
3   7
4   8
5   10
6   11

我的代码出了什么问题?

非常感谢

1 个答案:

答案 0 :(得分:1)

您正在使用比较生成的掩码,以便它False返回NaN,以摆脱这些调用documentation

In [32]:
dfp[dfp > 5].dropna()

Out[32]:
     0
1   10
3    7
4   13
7    7
8    8
9   10
10  11

这里的面具:

In [33]:
dfp > 5

Out[33]:
        0
0   False
1    True
2   False
3    True
4    True
5   False
6   False
7    True
8    True
9    True
10   True
11  False