如果我有这样的熊猫数据框:
0 1 2
0 0 0 0
1 1 0 1
2 0 0 1
3 1 1 0
和这样的熊猫数据框:
0 1 2
0 0 2 3
如何将此数组连接到每一行,这样我就得到一个新的pandas数据框,如下所示:
0 1 2 3 4 5
0 0 0 0 0 2 3
1 1 0 1 0 2 3
2 0 0 1 0 2 3
3 1 1 0 0 2 3
答案 0 :(得分:2)
有一个已删除的答案,该答案非常接近。
# merge the data frame
df = pd.concat([df1, df2], axis=1, sort=False)
# rename dataframe to advoid duplications
df.columns = range(len(df.columns))
# fill na's in the columns of df2
df[-len(df2.columns):].ffill(inplace=True)
答案 1 :(得分:0)
可以使用dict分配多个静态值:
df1.columns = ['3', '4', '5']
df = df.assign(**df1.to_dict('index')[0])
# If need to be int names: df.columns = df.columns.astype(int)
0 1 2 3 4 5
0 0 0 0 0 2 3
1 1 0 1 0 2 3
2 0 0 1 0 2 3
3 1 1 0 0 2 3