Python Pandas – 删除任何级别为NaN的多级索引的值
要删除任何级别为NaN的多级索引的值,请使用 multiIndex.dropna() 方法。将参数 how 设置为值 any 。
首先,导入所需的库-
import pandas as pd
import numpy as np
创建一个具有一些NaN值的多级索引。names参数设置索引级别的名称 –
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [np.nan, 20], [25, np.nan], [35, 40]],names=['a', 'b', 'c', 'd'])
删除任何级别为NaN的多级索引中的值。即使只有一个NaN值,dropna()也将删除所有值。该dropna()的”how”参数与”value”为”any”一起使用 –
print("\n删除任何级别为NaN的值...\n",multiIndex.dropna(how='any'))
例如
以下是代码 –
import pandas as pd
import numpy as np
# 创建一个具有一些NaN值的多级索引
# names参数设置索引级别的名称
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [np.nan, 20], [25, np.nan], [35, 40]],names=['a', 'b', 'c', 'd'])
# 显示多级索引
print("多级索引...\n", multiIndex)
# 删除任何级别为NaN的多级索引中的值
# 即使只有一个NaN值,dropna()也将删除所有值
# 该dropna()的"how"参数与"value"为"any"一起使用
print("\n删除任何级别为NaN的值...\n",multiIndex.dropna(how='any'))
输出
这将产生以下输出 –
多级索引...
MultiIndex([( 5, nan, 25.0, 35),(10, 20.0, nan, 40)],names=['a', 'b', 'c', 'd'])
删除任何级别为NaN的值...
MultiIndex([], names=['a', 'b', 'c', 'd'])
极客教程