gpt4 book ai didi

python - 数据框组中的列条件

转载 作者:行者123 更新时间:2023-11-28 22:20:16 25 4
gpt4 key购买 nike

       A     B     C     D
0 Red 10.0 11.5 12.0
1 Red 10.5 11.5 12.0
2 Red 11.0 11.5 12.0
3 Red 12.0 11.5 12.0
4 White 10.0 10.5 11.0
5 White 10.5 10.5 11.0
6 White 11.0 10.5 11.0
7 White 12.0 10.5 11.0

我想创建一个新的 df1,条件如下:

每个 A 组(“红色”和“白色”):

  • 如果B组中存在C值,则取C=B所在的行。
  • 如果B组中不存在C值,则取D=B所在的行。

我的意思是,新的 df1 应该是:

       A     B     C     D
3 Red 12.0 11.5 12.0
5 White 10.5 10.5 11.0

最佳答案

您可以使用 boolean indexingconcat , 然后 drop_duplicates并为默认订购添加 sort_index :

m1 = df['B'] == df['C']
m2 = df['B'] == df['D']
df = pd.concat([df[m1], df[m2]]).drop_duplicates('A').sort_index()
print (df)
A B C D
3 Red 12.0 11.5 12.0
5 White 10.5 10.5 11.0

关于python - 数据框组中的列条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49086932/

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