我试图在二维数组中的特定位置插入任意数量的 NaN 值行。我正在将来自微控制器的一些数据记录在 .csv 文件中并使用 python 进行解析。
数据存储在 3 列 2D 数组中,如下所示
[(122.0, 1.0, -47.0) (123.0, 1.0, -47.0) (125.0, 1.0, -44.0) ...,
(39.0, 1.0, -47.0) (40.0, 1.0, -45.0) (41.0, 1.0, -47.0)]
第一列是序列计数器。我想做的是迭代序列值,比较当前和上一个序列号,并插入与缺失序列一样多的带有 nan 的行。
基本上,
[(122.0, 1.0, -47.0) (123.0, 1.0, -47.0) (125.0, 1.0, -44.0)]
会成为
[(122.0, 1.0, -47.0) (123.0, 1.0, -47.0) (nan, nan, nan) (125.0, 1.0, -44.0)]
然而下面的实现np.insert
产生错误
while (i < len(list[1])):
pid = list[i][0]
newMissing = (pid - LastGoodId + 255) % 256
TotalMissing = TotalMissing + newMissing
np.insert(list,i,np.zeros(newMissing,1) + np.nan)
i = i + newMissing
list[i][0] = TotalMissing
LastGoodId = pid
---> 28 np.insert(列表,i,np.zeros(newMissing,1) + np.nan)
29 i = i + 新失踪
30 列表[i][0] = 总缺失
类型错误:数据类型无法理解
关于如何实现这一目标有什么想法吗?