编程语言
首页 > 编程语言> > python – 从文本文件中将数据读入numpy数组

python – 从文本文件中将数据读入numpy数组

作者:互联网

我有一个包含一些元数据的文件,然后是一些由2列标题组成的实际数据.在numpy中使用genfromtxt之前,我是否需要分离这两种类型的数据?或者我可以以某种方式拆分数据吗?将文件指针放在标题上方的行尾,然后从那里尝试genfromtxt怎么样?谢谢
该文件的格式如下所示:

 &SRS
<MetaDataAtStart>
multiple=True
Wavelength (Angstrom)=0.97587
mode=assessment
background=True
issid=py11n2g
noisy=True
</MetaDataAtStart>
&END
Two Theta(deg)  Counts(sec^-1)
10.0    41.0
10.1    39.0
10.2    38.0
10.3    38.0
10.4    41.0
10.5    42.0
10.6    38.0
10.7    44.0
10.8    42.0
10.9    39.0
11.0    37.0
11.1    37.0
11.2    45.0
11.3    36.0
11.4    37.0
11.5    37.0
11.6    40.0
11.7    44.0
11.8    45.0
11.9    46.0
12.0    44.0
12.1    40.0
12.2    41.0
12.3    39.0
12.4    41.0

解决方法:

如果您不想要前n行,请尝试(如果没有丢失数据):

data = numpy.loadtxt(yourFileName,skiprows=n)

或(如果缺少数据):

data = numpy.genfromtxt(yourFileName,skiprows=n)    

如果您想要解析标题信息,可以返回并打开文件解析标题,例如:

fh = open(yourFileName,'r')
for i,line in enumerate(fh):
    if i is n: break
    do_other_stuff_to_header(line)
fh.close()

标签:python,arrays,numpy,file-io,genfromtxt
来源: https://codeday.me/bug/20190928/1828385.html