我有许多 .txt 文件,其中包含原则上每个 (636,800) 的数据。
np.loadtxt 对于大多数人来说都很好,但有一些会触发 ValueError:第 #X 行(得到 Y 列而不是 800)。
在Excel中检查它们时(不要评判我)txt的最后一行被剪短,然后就没有更多的数据了。我猜写得不完整,但即使我是正确的,它也不能解决问题,不,我不能回去再次复制这些数据。
我尝试过使用 fill_values=0 的 np.genfromtxt ,但仍然收到错误 Line #X (得到 Y 列而不是 800)。也许是因为第 800 列中没有数据,所以没有定义要填充的间隙? 我试过这个: 使用 NumPy 将非均匀数据从文件读取到数组中,由于最佳答案,我可以从中创建一个列表数组,然后尝试这个如何将 numpy 数组列表转换为单个 numpy 数组?,这没有没用。
我还尝试过创建一个空的 numpy 数组并将列表数组放入其中。有没有办法加载我拥有的数据,尽管它不完整?
然后这段代码将通过分隔符分割每一行,如果该行的长度小于 5,则用 '0' 填充它。
f = open("...\input1.txt", "r")
lines = [x.replace("\n", "").split(",") for x in f]
lines = [x + ['0']*(5-len(x)) if len(x) < 5 else x for x in lines]
lines
然后可以将其放入 numpy 数组或 pandas 数据框等中。