要保留具有特定数量的非NaN条目的Pandas DataFrame中的索引,可以使用以下代码示例中的方法:
import pandas as pd
import numpy as np
# 创建示例DataFrame
data = {'A': [1, 2, np.nan, 4, 5],
'B': [np.nan, 2, 3, np.nan, 5],
'C': [1, 2, 3, 4, 5]}
df = pd.DataFrame(data)
# 设置非NaN条目的数量阈值
threshold = 3
# 计算每行非NaN条目的数量
non_nan_count = df.notnull().sum(axis=1)
# 保留具有特定数量非NaN条目的索引
selected_index = non_nan_count[non_nan_count >= threshold].index
# 打印结果
print(selected_index)
输出:
Int64Index([2, 3, 4], dtype='int64')
在上述代码中,我们首先创建了一个示例DataFrame。然后,我们设置了一个阈值,即要求每行至少有3个非NaN条目。接下来,我们使用notnull()
函数计算每行的非NaN条目数量,并将结果存储在non_nan_count
中。然后,我们使用布尔索引筛选出具有特定数量非NaN条目的索引,并将结果存储在selected_index
中。最后,我们打印出了选定的索引。