2017-05-09 53 views
1

我有3个数据帧我想串联维护df1的索引。当连接不同索引的数据帧时的Nan结果

df1:      
       sq/ft         

R     0.026715             
A    -0.016556             
P  0.007440       
V  0.009841  


df2: 
     ml/sq 

0  0.032394 
1     0.065046 
2     0.009021 
3     0.041041 

df3: 
     mlsq/rt 
0   0.000871 
1  -0.000148 
2   0.000484 
3  0.026715 

所需的输出会是这样的:

   sq/ft        ml/sq  mlsq/rt    

R     0.026715    0.032394 0.000871        
A    -0.016556     0.065046  -0.000148 
P  0.007440     0.009021  0.000484 
V  0.009841  0.041041 0.026715 

这是我曾尝试以下大熊猫DOC: http://pandas.pydata.org/pandas-docs/stable/merging.html#set-logic-on-the-other-axes

print(pd.concat([df2,df1,df3], axis=1, join_axes=[df1.index])) 

他们的3 DF和我电流输出为

 ml/sq   sq/ft 

R      NaN       0.026715 
A      NaN      -0.016556 
P      NaN       0.007440 
V      NaN       0.009841 

df3它甚至不会作为输出返回。

回答

1

我认为你需要对齐指标 - simpliest由df1.index设定指标在df2.indexdf3.index

df2.index = df1.index 
df3.index = df1.index 
print(pd.concat([df2,df1,df3], axis=1))