如果我有來自Excel電子表格的數據 - 該格式規定只有更改的行具有填寫的第一列(其他條目爲空)。然後假定該值持續N行,直到值再次改變。奇怪的熊貓行爲更新NaN與以前行的值
所以熊貓進口此如下 - 這裏沒有suprises:
動物
貓
NaN的
NaN的
NaN的
狗
NaN的
NaN的
牛
的NaN
我需要的最後一個有效值來替換NaN的 - 所以在上面的例子:
動物
貓
貓
貓
貓
狗
狗
狗
牛
奶牛
我想出了動物的下面,假設列名:
df.Animal.where(〜df.Animal.isnull(),df.Animal.shift())
如果熊貓在序列運行,那麼它應該在以前的「動物」應該始終填充 - 但是當我運行這個時,我看到只有代表Cat,Dog和Cow的第一個NaN被更新,其他NaN仍然存在。
如果我用一個硬編碼的字符串替換shift(),那麼邏輯看起來很好。
我認爲這意味着熊貓不會以嚴格的順序運行,並且可能會並行化地圖操作。
在哪種情況下(或者如果我還在做其他事情) - 我該怎麼做?
謝謝!
Phil。
是的!證明解決問題 - 非常感謝!仍然好奇爲什麼我的原始建設失敗,然後我把問題關閉。 – Phil
請參閱我的編輯。 – blacksite
是的 - 這是我懷疑 - 再次感謝,非常有幫助! – Phil