簡體   English   中英

如何在沒有固定列大小的情況下使用numpy加載數據

[英]How to load data with numpy with no fixed column size

我們如何加載帶有制表符分隔值但沒有固定列大小的文本文件,從而完全跳過缺少的值,從而最終得到一個列表/數組或任何包含每行numpy數組(或整個numpy數組)的容器? ->可能是不可能的,因為numpy需要固定大小)?

僅通過使用python讀取每一行,然后使用loadtxt將該行轉換為一維數組,是否有可能?

list=[]
for lineString in file:
    list.append( np.loadtxt(lineString) )

還是可能以某種方式加載txt?

也許你可以用pandas

如果您的文件如下所示:

1   2   3   4   5   6
1   2
8.0 9   97  54

然后這樣做:

import pandas as pd
pd.read_csv('yourfile.txt',sep='\t')

得到:

   1  2   3   4   5   6
0  1  2 NaN NaN NaN NaN
1  8  9  97  54 NaN NaN

要轉換為numpy數組:

np.array(pd.read_csv('yourfile.txt',sep='\t'))


array([[  1.,   2.,  nan,  nan,  nan,  nan],
       [  8.,   9.,  97.,  54.,  nan,  nan]])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM