我有df1和df2,我想创建新的数据帧df3,这样df3的第一条记录应该是来自df1的第一条记录,df3的第二条记录应该是df2的第一条记录。它以类似的方式继续着。
我对熊猫尝试了很多方法,但都没有得到答案。
有什么方法可以做到这一点吗?
发布于 2021-08-05 14:03:14
您可以创建一个具有增量id的列(一个是奇数列,另一个是偶数列:
import numpy as np
df1['unique_id'] = np.arange(0, df1.shape[0]*2,2)
df2['unique_id'] = np.arange(1, df2.shape[0]*2,2)然后追加它们并按此列排序:
df3 = df1.append(df2)
df3 = df3.sort_values(by=['unique_id'])之后,您可以删除您创建的列:
df3 = df3.drop(columns=['unique_id'])发布于 2021-08-05 14:01:41
你可以这样做:
import pandas as pd
df1 = pd.DataFrame({'A':[3,3,4,6], 'B':['a1','b1','c1','d1']})
df2 = pd.DataFrame({'A':[5,4,6,1], 'B':['a2','b2','c2','d2']})
dfff = pd.DataFrame()
for i in range(0,4):
dfx = pd.concat([df1.iloc[i].T, df2.iloc[i].T])
dfff = pd.concat([dfff, dfx])
print(pd.concat([df1, df2]).sort_index(kind='merge'))这给了我们
A B
0 3 a1
0 5 a2
1 3 b1
1 4 b2
2 4 c1
2 6 c2
3 6 d1
3 1 d2https://stackoverflow.com/questions/68667994
复制相似问题