当至少单元格为空时,如何将 CSV 文件加载到跳过行的数组中?我的 CSV 文件很大(超过 1000 行和 14 列):
1;4;3
;1;3
;;6
3;4;7
我想跳过写入第 2 行和第 3 行,因为它们缺少值 (x;1;3) (x;x;6)所有其他完整的行都应该写入数组...
这些行(每行中都有"完整"信息)应写入矩阵(数组)
M = np.genfromtxt(file.csv, delimiter=";",dtype=float)
在所有
行中读取,然后只保留那些没有丢失数据的行可能会更容易。
>>> M = np.genfromtxt("miss.csv", delimiter=";", dtype=float)
>>> M
array([[ 1., 4., 3.],
[ nan, 1., 3.],
[ nan, nan, 6.],
[ 3., 4., 7.]])
>>> M = M[~np.isnan(M).any(axis=1)]
>>> M
array([[ 1., 4., 3.],
[ 3., 4., 7.]])
(这假定您不会nan
作为要保留的miss.csv
中的值。 如果你这样做,那就有点棘手了。