gpt4 book ai didi

python - 使用 groupby 函数根据唯一条件从不同列中选择不同的值

转载 作者:太空狗 更新时间:2023-10-30 02:51:24 25 4
gpt4 key购买 nike

我有这样一个数据框:

PA  date    grade_conc  grade_rebar grade_mason grade_work  grade_timber    grade_steel grade_total
0 1 2018-10-13 A NR NR NR A A NR
1 1 2018-10-14 A NR NR NR A Z NR
2 1 2018-10-15 A NR NR NR B U NR
3 2 2018-10-13 B NR NR NR B B NR
4 2 2018-10-14 Z NR NR NR A B NR
5 2 2018-10-15 U NR NR NR B A NR

我想要的结果是


PA date grade_conc grade_rebar grade_mason grade_work grade_timber grade_steel grade_total
1 2018-10-15 A NR NR NR B Z NR
2 2018-10-15 Z NR NR NR B A NR

结果应按列 PA 分组并为所有列选择最新日期值,除非列的值为“U”,在这种情况下,它应该是更早的日期值,因为该列没有“U”

最佳答案

replace 'U' with NaN 然后你想要 groupby + last 的逻辑:

#df = df.sort_values(['PA', 'date'])
df.replace('U', np.NaN).groupby('PA').last()

date grade_conc grade_rebar grade_mason grade_work grade_timber grade_steel grade_total
PA
1 2018-10-15 A NR NR NR B Z NR
2 2018-10-15 Z NR NR NR B A NR

关于python - 使用 groupby 函数根据唯一条件从不同列中选择不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56033251/

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