gpt4 book ai didi

python - 使用 dropna() 选择子集以选择多列

转载 作者:行者123 更新时间:2023-11-28 20:35:18 27 4
gpt4 key购买 nike

我有以下数据框:

df = pd.DataFrame([[1,2,3,3],[10,20,2,],[10,2,5,],[1,3],[2]],columns = ['a','b','c','d'])

从这个 DataFrame 中,我想删除子集 ['b', 'c', 'd'] 中所有值都为 NA 的行,这意味着应该删除最后一行。

以下代码有效:

df.dropna(subset=['b', 'c', 'd'], how = 'all')

但是,考虑到我将处理更大的数据框,我想使用范围 ['b':'d'] 选择相同的子集。如何选择这个子集?

最佳答案

IIUC,使用 loc,检索这些列,并将其传递给 dropna

c = df.loc[0, 'b':'d'].columns  # retrieve only the 0th row for efficiency
df = df.dropna(subset=c, how='all')

print(df)
a b c d
0 1 2.0 3.0 3.0
1 10 20.0 2.0 NaN
2 10 2.0 5.0 NaN
3 1 3.0 NaN NaN

关于python - 使用 dropna() 选择子集以选择多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46864740/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com