Извлечь конкретные данные из TXT-файла, добавить в базу данных CSV - PullRequest
0 голосов
/ 19 февраля 2019

У меня более 3000 текстовых файлов, из которых я хочу извлечь отдельные фрагменты данных.Каждый текстовый файл разделен пробелами, и я хотел бы, чтобы данные из первых 3 строк из столбца 0 и столбца 29 были извлечены и добавлены в новый файл CSV.

Я написал некоторый код, который извлекаетданные, которые я хочу, и создает новый файл CSV, но я не уверен, как добавить данные в существующий CSV.В идеале я хотел бы просмотреть текстовые файлы, добавив 3 соответствующие строки данных из 2 столбцов в базу данных CSV.Может кто-нибудь предложить, как я мог бы сделать это?

# opens text file and sorts delimiters
with open('Text_file_1.txt', 'r') as in_file:
    lines = in_file.read().splitlines()
    stripped = [line.replace(","," ").split() for line in lines]
    grouped = itertools.izip(*[stripped]*1)

    # takes text file data, saves all to csv
    with open('data_extracted.csv', 'w') as out_file:
       writer = csv.writer(out_file)
       for group in grouped:
           writer.writerows(group)

# reads in the csv of all data extracted from text file
data = pd.read_csv("data_extracted.csv")

# Select only the rows we need
data = data[:3]

# output new csv file with columns 0 and 29
csvfile = "Pahala_SO2.csv"
outdf = pd.DataFrame()
outdf['Date Time'] = data.iloc[:,0]
outdf['Ensemble Mean'] = data.iloc[:,29]

outdf.to_csv(csvfile, index=False)

"""
Sample of first 4 rows of txt file: 
2018051012 1525953600 0.022 0.016 0 0 0 4.39e-05 0.029 0.00656 0.00412 0 0 0         
0 0 0 0 0 0 0.00103 0.036 0.018 8.93e-05 0.00117 0 0.000208 0.014 0.00411 
0.022
2018051013 1525957200 0 0 0 0 0 0.00023 7.26e-05 0.045 0 0 0 0 0 0 0 0 0 0 0 
0.00863 0 0 0.00106 0 0 0 0 0
2018051014 1525960800 0 0 0 0 0 0 0.028 0.011 0.039 0 0 0 0 0 0 0 0 0 
0.00024 0.017 0.000342 0.000306 0.000637 0.000945 0.000249 0.126 0.000343 0
2018051015 1525964400 0.000174 7.8e-05 0.000418 0.03 8.68e-05 0 0.00106 
0.175 0 0 0 0 0 0 0 0 0 0 0 0 0.014 0.000498 0.000209 0.00235 0 0.000234 0 
0.000174
2018051016 1525968000 0.00046 0.037 0.000759 0.000168 0.00121 0.015 0.00836 
0.027 0.000236 0 0 0 0 0 0 0 0 0 0.08 0.025 0.112 0.092 0.099 0.122 0.034 
0.169 0.108 0.00046
"""

Любая помощь высоко ценится, спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...