我有一个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