2017-09-25 10 views
0

これは私のオリジナルのデータフレームです。 Original dataframe これは、1つの列を含む第2のデータフレームです。 second datframe 2番目のデータフレームの列を最後の元のデータフレームに追加したいと思います。両方のデータフレームの違いは異なります。 この異なるインデックスを持つ別のデータフレームからpandasデータフレームに新しい列を追加する

feature_file_df['RESULT']=RESULT_df['RESULT'] 

結果列が追加しまったように私はしなかったが、すべての値はNaNでの同じ、あなたが割り当てることができているあなたのデータフレームの大きさを想定した値

+0

2つのデータフレームの長さは一致していますか? 'len(feature_file_df)== len(RESULT_df)'? – Psidom

+1

'feature_file_df ['RESULT'] = RESULT_df ['RESULT']。values'' values'属性を呼び出します。 –

答えて

2

に列を追加する方法Added result

RESULT_df['RESULT'].valuesを元のデータフレームに追加します。この方法では、インデックスの問題について心配する必要はありません。

feature_file_df['RESULT'] = RESULT_df['RESULT'].values 

セットアップ

df 
      A   B 
0 -1.202564 2.786483 
1 0.180380 0.259736 
2 -0.295206 1.175316 
3 1.683482 0.927719 
4 -0.199904 1.077655 
5 -1.094666 -0.377783 
6 0.351193 -1.045290 
7 -0.013174 1.525027 
8 -0.155707 -0.389500 
9 -0.295518 0.177683 

df2 

      C 
11 -0.140670 
12 1.496007 
13 0.263425 
14 -0.557958 
15 -0.018375 
16 1.044098 
17 -0.412894 
18 1.187938 
19 1.989982 
20 0.502832 

のは、最初の直接割り当てを試してみましょう。

df['C'] = df2['C'] 
df 

      A   B C 
0 -1.202564 2.786483 NaN 
1 0.180380 0.259736 NaN 
2 -0.295206 1.175316 NaN 
3 1.683482 0.927719 NaN 
4 -0.199904 1.077655 NaN 
5 -1.094666 -0.377783 NaN 
6 0.351193 -1.045290 NaN 
7 -0.013174 1.525027 NaN 
8 -0.155707 -0.389500 NaN 
9 -0.295518 0.177683 NaN 

ここで、.values属性を割り当てます。 .valuesは、インデックスを持たないnumpy配列を返します。

df2['C'].values 
array([-0.141, 1.496, 0.263, -0.558, -0.018, 1.044, -0.413, 1.188, 
     1.99 , 0.503]) 

df['C'] = df2['C'].values 
df 

      A   B   C 
0 -1.202564 2.786483 -0.140670 
1 0.180380 0.259736 1.496007 
2 -0.295206 1.175316 0.263425 
3 1.683482 0.927719 -0.557958 
4 -0.199904 1.077655 -0.018375 
5 -1.094666 -0.377783 1.044098 
6 0.351193 -1.045290 -0.412894 
7 -0.013174 1.525027 1.187938 
8 -0.155707 -0.389500 1.989982 
9 -0.295518 0.177683 0.502832 
関連する問題