このquestionは何度も尋ねられましたが、別のデータフレーム(df1
とdf2
の長さが同じです)から列をコピーすると、NaN
という値が得られます。私は、あるDataFrameから別のDataFrameに列をコピーすると、NaN値が得られますか?
df2
MyVar1 MyVar2 date time
0 6169.719338 3688.045368 2017-05-01 00:00:00
1 5861.148007 3152.238704 2017-05-01 01:00:00
2 5797.053347 2700.469871 2017-05-01 02:00:00
3 5779.102340 2730.471948 2017-05-01 03:00:00
4 6708.219647 3181.298291 2017-05-01 04:00:00
5 8550.380343 3793.580394 2017-05-01 05:00:00
に、このように必要
df1
date hour var1
0 2017-05-01 00:00:00 456585
1 2017-05-01 01:00:00 899875
2 2017-05-01 02:00:00 569566
3 2017-05-01 03:00:00 458756
4 2017-05-01 04:00:00 231458
5 2017-05-01 05:00:00 986545
df2
MyVar1 MyVar2
0 6169.719338 3688.045368
1 5861.148007 3152.238704
2 5797.053347 2700.469871
3 5779.102340 2730.471948
4 6708.219647 3181.298291
5 8550.380343 3793.580394
私は次のように取得しています
、
MyVar1 MyVar2 date time
0 6169.719338 3688.045368 NaN NaN
1 5861.148007 3152.238704 NaN NaN
2 5797.053347 2700.469871 NaN NaN
ですが、なぜでしょうか? merge
について議論する別のpostがありますが、コピーするだけです。どんな助けもありがとう。
@ i.n.n.mインデックスに問題がある可能性があります。 'ignore_index = True'を追加してみてください。それ以外の場合は、両方のインデックスを最初にリセットしてから連結してください。 –
@ i.n.n.m 'df2 ['date'] = df1 ['date']。values' – Wen
@COLDSPEED' reset_index'が働いています。 –