gpt4 book ai didi

python - 如何在 Pandas 中每隔第 n 行将 n 个 DataFrame 插入另一个?

转载 作者:太空宇宙 更新时间:2023-11-03 12:31:00 26 4
gpt4 key购买 nike

例如,我有一个DataFrame A如下

A
0
1
2

现在我想将 DataFrame B 中的每 2 行插入到 A 中,每 1 行插入一次,B 如下

B
3
3
4
4
5
5

终于要了

A
0
3
3
1
4
4
2
5
5

我怎样才能做到这一点?

最佳答案

一个选项是获取每个数据帧的值, reshape 形状,与 np.hstack 连接,然后分配给一个新的数据帧。

In [533]: pd.DataFrame(np.hstack((df1.A.values.reshape(-1, 1),\
df2.B.values.reshape(-1, 2))).reshape(-1, ),\
columns=['A'])
Out[533]:
A
0 0
1 3
2 3
3 1
4 4
5 4
6 2
7 5
8 5

另一种使用 pd.concatdf.stack 的解决方案:

In [622]: pd.DataFrame(pd.concat([df1.A, pd.DataFrame(df2.B.values.reshape(-1, 2))], axis=1)\
.stack().reset_index(drop=True),\
columns=['A'])
Out[622]:
A
0 0
1 3
2 3
3 1
4 4
5 4
6 2
7 5
8 5

关于python - 如何在 Pandas 中每隔第 n 行将 n 个 DataFrame 插入另一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45450633/

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