gpt4 book ai didi

python - "Merging"相同大小的数据帧合并为一个数据帧

转载 作者:行者123 更新时间:2023-12-02 15:57:20 25 4
gpt4 key购买 nike

我有一堆遵循这种模式的 Dataframes:

col1  col2  col3   
1 2 3
1 2 3
1 2 3

col1 col2 col3
1 2 3
1 2 3
1 2 3

我如何将它们合并到

col1  col2  col3   
[1,1] [2,2] [3,3]
[1,1] [2,2] [3,3]
[1,1] [2,2] [3,3]

我不知道该怎么做,只是觉得应该有一个简单的方法。

最佳答案

如果您的数据框对齐良好,您可以使用 numpy.dstack

import numpy as np

out = pd.DataFrame(np.dstack([df1, df2]).tolist(),
index=df1.index, columns=df1.columns)
print(out)

# Output
col1 col2 col3
0 [1, 1] [2, 2] [3, 3]
1 [1, 1] [2, 2] [3, 3]
2 [1, 1] [2, 2] [3, 3]

更新

仅使用 pandas:

out = pd.concat([df1, df2]).stack().groupby(level=[0, 1]) \
.apply(list).unstack(level=1)
print(out)

# Output
col1 col2 col3
0 [1, 1] [2, 2] [3, 3]
1 [1, 1] [2, 2] [3, 3]
2 [1, 1] [2, 2] [3, 3]

关于python - "Merging"相同大小的数据帧合并为一个数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71283644/

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