python notnull 过滤器 - nan 值
python notnull filter - nan values
我有一个简化的数据框,看起来像这样:
Time Type Val
03:55 A 1
04:00 B 2
04:05 B 2
04:10 B NaN
04:15 A 7.2
04:20 A 9.6
04:25 B NaN
04:30 A NaN
...
我想过滤掉B组的NaN而不过滤掉A组的NaN,预期输出:
Time Type Val
03:55 A 1
04:00 B 2
04:05 B 2
04:15 A 7.2
04:20 A 9.6
04:30 A NaN
...
我试过 df[df.Val.notnull()]
但这会删除所有空值,包括 A 组中的空值。
Cain 另一个条件 |
用于按位 OR
用于测试如果不等于 B
:
df = df[df.Val.notna() | df.Type.ne('B')]
print (df)
Time Type Val
0 03:55 A 1.0
1 04:00 B 2.0
2 04:05 B 2.0
4 04:15 A 7.2
5 04:20 A 9.6
7 04:30 A NaN
我有一个简化的数据框,看起来像这样:
Time Type Val
03:55 A 1
04:00 B 2
04:05 B 2
04:10 B NaN
04:15 A 7.2
04:20 A 9.6
04:25 B NaN
04:30 A NaN
...
我想过滤掉B组的NaN而不过滤掉A组的NaN,预期输出:
Time Type Val
03:55 A 1
04:00 B 2
04:05 B 2
04:15 A 7.2
04:20 A 9.6
04:30 A NaN
...
我试过 df[df.Val.notnull()]
但这会删除所有空值,包括 A 组中的空值。
Cain 另一个条件 |
用于按位 OR
用于测试如果不等于 B
:
df = df[df.Val.notna() | df.Type.ne('B')]
print (df)
Time Type Val
0 03:55 A 1.0
1 04:00 B 2.0
2 04:05 B 2.0
4 04:15 A 7.2
5 04:20 A 9.6
7 04:30 A NaN