Сбор данных из нескольких файлов
Подскажите, пожалуйста, как собрать и сохранить данные с множества однородных таблиц в формате .dat, так чтобы программа брала только одну ячейку - data.RadVel[0], и схраняла всё в ОДИН файл в таком виде (имя файла _ величина из ячейки):
file1.dat 36.8
file2.dat 36.2
Мой код:
import os
import pandas as pd
import glob
path='D:/Python/Sp'
os.chdir('D:/Python/Sp')
for file in glob.glob('*.dat'):
data=pd.read_csv(file,delimiter='\s+',engine='python')
print(file,data.RadVel[0])
Ответы (2 шт):
Автор решения: MaxU
→ Ссылка
Код по описанию из вопроса:
data = []
for file in glob.glob('*.dat'):
df = pd.read_csv(file, sep='\s+', engine='python', usecols=['RadVel'], nrows=2)
data.append([file, df.loc[0, 'RadVel']])
res = pd.DataFrame(data, columns=['file', 'val'])
res.to_csv('result.csv', sep='\t', index=False)
NOTE: данный код не тестировался по причине отсутствия в вопросе воспроизводимого примера данных.
Автор решения: Vitalii Checha
→ Ссылка
Спасибо за внимание, решил сам проблему!
d=str(data.RadVel[0])
dat=open('data.txt','a')
dat.write(d+'\n')
dat.close()