np loadtxt返回数组,而不是使用段落作为分隔符的数组

问题描述 投票:0回答:1

我需要将txt文件加载到np.array中,其中data are in N several lines, that is, separated by paragraphs。当我使用np.loadtxt时,它返回一个形状为(N,)的np.ndarray。我希望它返回带有“ shape”(N)的np.array(换句话说,是一个简单的1D数组)。我怎样才能做到这一点?我也愿意将数据作为ndarray上传,如果没有其他方法,则将其转换为array ...

谢谢! :)

python arrays numpy text-files numpy-ndarray
1个回答
0
投票

带有每行一个数字的文本文件:

In [356]: cat stack60588161.csv                                                                
1
2
3
4
5

loadtxt产生一维numpy数组:

In [357]: data = np.loadtxt('stack60588161.csv')                                               
In [358]: data                                                                                 
Out[358]: array([1., 2., 3., 4., 5.])
In [359]: data.shape                                                                           
Out[359]: (5,)

我可以强迫它创建一个二维数组:

In [361]: data = np.loadtxt('stack60588161.csv',ndmin=2)                                       
In [362]: data                                                                                 
Out[362]: 
array([[1.],
       [2.],
       [3.],
       [4.],
       [5.]])
In [363]: data.shape                                                                           
Out[363]: (5, 1)

这更像是常规的多列csv加载。

© www.soinside.com 2019 - 2024. All rights reserved.