2017-08-30 15 views
0

私は行の同じ量を持つ2つのデータフレームがあります:1434、およびIは軸1の間でそれらを連結したいと思います:Pandas concatの結果、NaN行になりましたか?

res = pd.concat([df_resolved, df1], axis=1) 

2つのデータフレームが同じ名前を持つすべての列を持っていません。私は同じようにそれらを結合したいと思います:

df1:  df2: 
col1 col2 | col3 col4 
1 0 | 9 0 
6 0 | 0 0 

= 
concatenated_df: 
col1 col2 col3 col4 
1 0 9 0 
6 0 0 0 

これは、このような小さな例で正常に動作しますが、私はあまりにもある私の元のデータセット、上でそれをしようとした場合、何らかの理由で私は多くのNaN行で終わります(1434x24と1434x17458の形のデータフレームに参加しようとしています)私を監督するのは大変です。だから結果はまあまあです:

concatenated_df: 
col1 col2 col3 col4 
col1 col2 col3 col4 
1 0 9 0 
6 0 0 0 
NaN NaN 0 0 

私はなぜそうは見えません。これがどうやって起こるか考えていますか?私は列名に_xyz文字列を追加して、小さなデータフレームのすべての列の名前を変更しようとしましたが、問題は同じままです。

+0

...私はトレーニングやテストset.Thisが私の解決策である生成されたときpd.concatがあまりにもこのような状況では動作しない理由、しかし、私は知らない、同じ問題を抱えているために使用されますhttps://stackoverflow.com/questions/20109391/how-to-make-good-reproducible-pandas-examples – Wen

答えて

1

私は

l1=df.values.tolist() 
l2=df_resolved.values.tolist() 
for i in range(len(l1)): 
    l1[i].extend(l2[i]) 

df=pd.DataFrame(l1,columns=df.columns.tolist()+df_resolved.columns.tolist()) 
+0

私はあなたを今とても愛しています! :D –

+0

@lte__男、私はまだあなたと同じ問題を抱えていますpd.concatは動作します... T_T – Wen

関連する問題