我有一個numpy的陣列(其不一定排序)同樣:numpy的/大熊貓差異:傳播DIFF在封閉楠元件
[2.0, 3.0, nan, nan, nan, 5.0]
欲計算該陣列上的差異。最後一個元素5和第二個元素3的區別是2.我希望這個2的差值分佈在我的numpy數組的隨機南元素上。如果我嘗試numpy.diff(我也嘗試使用蒙版陣列)我得到的結果:
[nan, 1, nan, nan, nan, nan]
。
它的結果應該是這樣的:
[nan, 1, 0.5, 0.5, 0.5, 0.5]
UPDATE:
我得到的答案爲以上具體情況而定的答案不是更一般的形式有效。例如,如果我們有尾隨/領先的南,當我們有交替nan和價值。例如:
[nan, nan, 2.0, 3.0, nan, nan, nan, 5.0, nan, 6.0, nan]
所以,將NaN比其他被輸入數組排序?而且,它的想法是,輸出數組也被排序。 這個想法是輸出[i]是輸入[i]和輸入[i-1]之間差異的平均值,具有nans的特殊情況? – JawguyChooser
第一個問題:不,數組不一定排序,例如可能是[5,11,4,nan,2]。第二個問題:是的,如果輸入[i-1]是南,我們應該檢查輸入[i-2],如果輸入[1-2]不是南,我們將輸入[i]和輸入[i-2 ]同等於輸入[i-1]和輸入[i]。 –
更新案例的預期輸出是什麼? – JawguyChooser