Чтение данных в массив numpy из текстового файла
У меня есть файл с некоторыми метаданными, а затем некоторые фактические данные, состоящие из 2 столбцов с заголовками. Нужно ли разделять два типа данных перед использованием genfromtxt в numpy? Или я могу как-то разделить данные, может быть? Как насчет размещения указателя файла в конце строки прямо над заголовками, а затем с помощью команды 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
1 ответ
Решение
Если ты не хочешь первый n
строки, попробуйте (если нет пропущенных данных):
data = numpy.loadtxt(yourFileName,skiprows=n)
или (если отсутствуют данные):
data = numpy.genfromtxt(yourFileName,skiprows=n)
Если вы затем хотите проанализировать информацию заголовка, вы можете вернуться и open
В файле разбираем заголовок, например:
fh = open(yourFileName,'r')
for i,line in enumerate(fh):
if i is n: break
do_other_stuff_to_header(line)
fh.close()