举个简单的例子,考虑arr如下定义的numpy数组:
import numpy as np
arr = np.array([[5, np.nan, np.nan, 7, 2],
[3, np.nan, 1, 8, np.nan],
[4, 9, 6, np.nan, np.nan]])
Run Code Online (Sandbox Code Playgroud)
arr在控制台输出中看起来像这样:
array([[ 5., nan, nan, 7., 2.],
[ 3., nan, 1., 8., nan],
[ 4., 9., 6., nan, nan]])
Run Code Online (Sandbox Code Playgroud)
我现在想逐行'向前填充' nan数组中的值arr.我的意思是用nan左边最近的有效值替换每个值.期望的结果如下所示:
array([[ 5., 5., 5., 7., 2.],
[ 3., 3., 1., 8., 8.],
[ 4., 9., 6., 6., 6.]])
Run Code Online (Sandbox Code Playgroud)
我尝试过使用for循环:
for row_idx in range(arr.shape[0]):
for col_idx in range(arr.shape[1]): …Run Code Online (Sandbox Code Playgroud)