mergeAllGB.Intensity
カラムNaN
の値を、ID、平日および時間が一致する別のデータフレームの値で更新したいとします。私は試しています:パンダ/ Python - 値の一致に基づいてデータフレームを更新する
mergeAllGB.Intensity[mergeAllGB.Intensity.isnull()] = precip_hourly[precip_hourly.SId == mergeAllGB.SId & precip_hourly.Hour == mergeAllGB.Hour & precip_hourly.Weekday == mergeAllGB.Weekday].Intensity
ただし、これはValueError: Series lengths must match to compare
を返します。どうすればこのことができますか?
最小例:
Inputs:
_______
mergeAllGB
SId Hour Weekday Intensity
1 12 5 NaN
2 5 6 3
precip_hourly
SId Hour Weekday Intensity
1 12 5 2
Desired output:
________
mergeAllGB
SId Hour Weekday Intensity
1 12 5 2
2 5 6 3
私は 'set_value'を使ってこの作業をしようとしています。しかし、私は同じエラー/不適切な長さのために不正確な結果を得るだろうと仮定します。 'df = mergeALLGB.set_value(mergeAllGB ['Intensity']。isnull()、 'Intensity'、precip_hourly ['Intensity'])' df = mergeALLGB.set_value(mergeAllGB ['Intensity'])を呼び出すと、 – MattR