gpt4 book ai didi

python - Pandas 有条件地选择多列

转载 作者:太空宇宙 更新时间:2023-11-04 07:33:42 25 4
gpt4 key购买 nike

假设我有一个数据框:

C1 V1 C2 V2 Cond
1 2 3 4 X
5 6 7 8 Y
9 10 11 12 X

语句应返回:如果 Cond == X,选择 C1 和 v1,否则选择 C2 和 V2

输出数据框是这样的:

C  V 
1 2
7 8
9 10

** 编辑:再添加一个要求:列数可以更改但遵循某种命名模式。在这种情况下,选择其中包含“1”的所有列,否则选择包含“2”的列。我认为硬编码解决方案可能行不通。

最佳答案

DataFrame.where() 的另一个选项:

df[['C1', 'V1']].where(df.Cond == "X", df[['C2', 'V2']].values)

# C1 V1
#0 1 2
#1 7 8
#2 9 10

关于python - Pandas 有条件地选择多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41420264/

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