创建数据帧df2:如果value1, value2, value3为NaN,则保留行
创建一个数据框架df3:保留行如果value5, value6, value7是NaN
输入数据帧,df:
name value1 value2 value3 value4 value5 value6 value7 value8 value9
0 58390 28.4 32.2 31.3 30.6 40.7 40.0 39.6 40.10 NaN
1 58395 31.4 32.8 31.5 31.9 NaN NaN NaN 38.60 NaN
2 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
3 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
4 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN
输出数据帧df2:
name value1 value2 value3 value4 value5 value6 value7 value8 value9
0 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
1 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
2 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN
输出数据帧df3:
name value1 value2 value3 value4 value5 value6 value7 value8 value9
0 58395 31.4 32.8 31.5 31.9 NaN NaN NaN 38.60 NaN
1 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
2 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
3 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN
创建一个数据框df2:如果value1, value2, value3是NaN,则保留行
创建一个数据框架df3:保留行如果value5, value6, value7是NaN
输入数据帧,df:
name value1 value2 value3 value4 value5 value6 value7 value8 value9
0 58390 28.4 32.2 31.3 30.6 40.7 40.0 39.6 40.10 NaN
1 58395 31.4 32.8 31.5 31.9 NaN NaN NaN 38.60 NaN
2 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
3 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
4 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN
输出数据帧df2:
name value1 value2 value3 value4 value5 value6 value7 value8 value9
0 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
1 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
2 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN
输出数据帧df3:
name value1 value2 value3 value4 value5 value6 value7 value8 value9
0 58395 31.4 32.8 31.5 31.9 NaN NaN NaN 38.60 NaN
1 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
2 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
3 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN
对isna
和all
使用布尔索引
如果您希望重复执行此操作,最好使用列表来收集输出:
cols = [['value1', 'value2', 'value3'],
['value5', 'value6', 'value7']]
out = [df[df[c].isna().all(axis=1)] for c in cols]
输出:
[ name value1 value2 value3 value4 value5 value6 value7 value8 value9
2 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
3 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
4 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN,
name value1 value2 value3 value4 value5 value6 value7 value8 value9
1 58395 31.4 32.8 31.5 31.9 NaN NaN NaN 38.60 NaN
2 67488 NaN NaN NaN 26.6 NaN NaN NaN 34.90 NaN
3 67490 NaN NaN NaN 29.9 NaN NaN NaN 39.65 NaN
4 67501 NaN NaN NaN 20.5 NaN NaN NaN 27.10 NaN]