Je reçois des fichiers texte qui sont structurés comme ceci :
random
----new data-----
06/19/2018 13:57:39.99 random information here
06/19/2018 13:58:24.99 some more random info
06/19/2018 13:58:35.08 00:00:04.38 A 00000 0 765 228270257 A0 44 45
06/19/2018 13:58:39.99 00:00:00.00 A 00000 0 756 228270257 A0 4 5
06/19/2018 13:58:40.61 00:00:00.00 A 00000 0 828 228270257 A0 1 7
06/19/2018 13:57:39.99 random information here
06/19/2018 13:58:24.99 some more random info
---end data---
random stuff
Il y a plusieurs lignes avec des informations aléatoires autour des données réelles qui m'intéressent. Je ne veux garder que les lignes qui ont A
dans la quatrième ligne, et ensuite je veux transformer les données en un fichier CSV.
En supposant que les données ci-dessus sont dans play.txt
J'ai essayé plusieurs variantes de cette méthode, qui ne fonctionne pas :
import csv
import pandas as pd
from io import StringIO
id = []
with open('play.txt', 'r') as fi:
for ln in fi:
if ln.startswith("A",4):
id.append(ln[0:])
id2 = ' '.join(id)
df = pd.read_table(StringIO(id2), delimiter=r'\s+', header=None)
print(df)
df.to_csv('out.csv')
Comment faire cela en python ?