我有一个数据框df1
,其中的头部看起来像(实际数据框更大):
Quarter Body Total requests Requests Processed
0 Q3 2019 A 93 92
1 Q3 2019 B 228 210
2 Q3 2019 C 180 178
3 Q3 2019 D 31 31
4 Q3 2019 E 555 483
5 Q2 2019 A 50 50
6 Q2 2019 B 191 177
7 Q2 2019 C 186 185
8 Q2 2019 D 35 35
9 Q2 2019 E 344 297
我还有另一个数据帧
df2
,其当前设置如下: Body Q2 2019 Q3 2019
0 A
1 B
2 C
3 D
4 E
我试图找到一种方法将列
Total requests
从df1
转换为df2
,所以我想要的输出看起来像: Body Q2 2019 Q3 2019
0 A 50 93
1 B 191 228
2 C 186 180
3 D 35 31
4 E 344 555
我环顾四周,但没有成功就找不到
如果有人可以提供一些帮助,将不胜感激。
谢谢
最佳答案
您可以unstack
在df1中将Body
和Quarter
设置为索引,然后与df2合并(如果使用df2很重要,否则无需合并即可):
df2.merge(df1.set_index(['Body','Quarter'])['Total requests'].unstack(),
left_on='Body',right_index=True,how='left',
suffixes=('_x','')).reindex(df2.columns,axis=1)
Body Q2 2019 Q3 2019
0 A 50 93
1 B 191 228
2 C 186 180
3 D 35 31
4 E 344 555
关于python - 将列数据从一个数据帧转置到另一数据帧,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59748391/