So möchte ich eine Funktion haben, die durch eine Datei lesen kann und in der Lage sein, die Sachen in ihnen zu zählen. Bisher habe ich das:Iterieren durch eine Datei und verarbeiten sie
import csv
def get_stats(train_file, valid_pfile = "cmu-phonemes.txt", valid_graphemes =
{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '_'}):
invalid_row = 0
valid_row = 0
phonemes_count = 0
graphemes_count = 0
underscore_count = 0
csv_open = open(train_file)
reader = csv.reader(csv_open)
with open(valid_pfile) as valid_p:
valid_pset = set(line.strip() for line in valid_p)
valid_gset = set(valid_graphemes)
Wie Sie vielleicht vermuten, ich möchte die Zahlen von bestimmten bestimmten Sachen zählen. Aber das ist nicht unbedingt schwierig. Die Sache ist, dass ich keinen Weg finde, um die Datei zu durchlaufen und noch ein bisschen zu zählen.
Hier ist eine Beispieldatei:
phonemes,graphemes
W IY K D EY,w ee k d ay
T EH K S T,t e x _ t
Y UW,ewe _
SH UW T,chu te
SH UW T,chu te
SH UW T,chu te !
SX AH K,s u ck
Die Frage ist, wie kann ich durch die Datei durchlaufen und trennen sie von diesem „“ in der Mitte (csv-Format) So konnte ich so etwas wie
haben[["SH", "UW", "T"],["chu", "te"]]
Oder etwas wie das, das für Schleifen und überprüfen verwendet werden kann.
Haben Sie versucht 'line.split (',')'? – Pouria
Sie scheinen die Datei bereits zu durchlaufen. Ist es 'line.split (',')', nach dem Sie suchen? Was brauchst du noch? – cdarke
@cdarke das würde eigentlich zwei verschiedene Listen oder Container-Objekte machen? –