我有一个带有大量行的pandas系列,有些行有值,其他行有None。 我想丢弃None值并将其他值保留在新系列中。
到目前为止,我已经尝试过:
data.where(~(data == None))
data[data != None]
data[[i for i in data.index if i != None]]
我也检查了过滤方法,但也没有成功。
但是所有这些系列都会返回一个系列,其行数与初始系列相同,包括None值。
我需要丢弃None值,因为我不知道哪些值是与None不同的值,并且值列表超过一千个入口,而且正则数是None。
答案 0 :(得分:1)
更一般地说(即对于python没有看作NaN的值);
import pandas as pd
a = pd.Series(['a', 'b', 'c', 'd', '0123', 'e', 'f', 'g'])
a = a.loc[a != '0123']
print a
或
a = a[a != '0123']
输出:
0 a
1 b
2 c
3 d
5 e
6 f
7 g
如果您尝试的那些方法无法正常工作,我怀疑您正在尝试就地进行过滤(即不将结果分配给变量)。