我有两个看起来像这样的数据框:
df1:
Index var1
0 56
1 67
2 21
Index var2
0 89
1 64
2 31
当我添加或连接它们时,我得到了:
Index var1 var2
0 56 nan
1 67 nan
2 21 nan
0 nan 89
1 nan 64
2 nan 31
但是我想得到这个:
Index var1 var2
0 56 89
1 67 64
2 21 31
我使用的命令是:
pd.concat([df1, df2], axis=1)
df1.append([df2])
编辑:
这是一个最小的示例:
df1 = pd.DataFrame({'var1' : [56,67,21]})
df2 = pd.DataFrame({'var2' : [89,64,31]})
df1.to_dict()
{'var1': {0: 56, 1: 67, 2: 21}}
df2.to_dict()
{'var2': {0: 89, 1: 64, 2: 31}}
df1.index.dtype
dtype('int64')
df2.index.dtype
dtype('int64')
答案 0 :(得分:0)
使用:
df1 = df1.set_index('Index')
df2 = df2.set_index('Index')
pd.concat([df1,df2], axis=1)
注意: :请确保索引位于数据框的索引中:
输出:
var1 var2
Index
0 56 89
1 67 64
2 21 31