【发布时间】:2023-03-11 22:01:01
【问题描述】:
您好,我有以下数据框:
>df1
code item01 item02 item03 item04 item05
0 1111 nan nan nan nan 440
1 1111 nan nan nan 650 nan
2 1111 nan nan nan nan nan
3 1111 nan nan nan nan nan
4 1111 32 nan nan nan nan
5 1111 nan nan nan nan nan
6 1111 nan nan nan nan nan
7 1111 nan nan nan nan nan
8 1111 nan nan nan nan nan
9 1111 nan nan nan nan nan
10 1111 nan nan nan nan nan
11 2222 20 nan nan nan nan
12 2222 nan nan nan nan nan
13 2222 nan nan nan 5 nan
14 2222 nan 7 nan nan nan
15 2222 nan nan nan nan nan
16 2222 nan nan nan nan nan
如何使用数据框中的“代码”列进行合并,以在没有 for 循环或 iterrows() 的情况下获得 df2。
>df2
code item01 item02 item03 item04 item05
0 1111 32 130 nan 650 440
1 2222 20 7 nan 5 nan
【问题讨论】:
-
每组只有一个非 nan 值?如果是,
df.groupby('code').first()应该可以工作。
标签: python python-3.x pandas dataframe merge