2017-06-02 4 views
0

Ich habe eine Datei wie diese (data.txt) zu lesen:Python Unter Verwendung von drei Sätze von Daten in drei verschiedenen Stationen

Jede Spalte von Daten aus 3 verschiedenen Stationen enthält (1,2,3 ..1,2,3..so on), so will ich jetzt die Daten von jeder Station 1 (Zeile 1, Zeile 4, Zeile 7), Station 2 (Zeile 2, Zeile 5, Zeile 8) und Station lesen 3 (Zeile 3, Zeile 6, Zeile 9) ....

Wie könnte ich tun? Meine Entschuldigung, wenn jemand vorher gefragt hätte.

Dank

+0

fügen Sie die Daten als ursprüngliche Textdatei ein, nicht als Bild. Dann ist es einfacher für Leute zu helfen –

Antwort

3

Wenn Ihre Daten Komma dies funktionieren begrenzt wird:

with open('data.txt') as d: 
    data = [list(map(float, line.split(','))) for line in d] 
    station1 = data[::3] #from first with step 3 
    station2 = data[1::3] #from second with step 3 
    station3 = data[2::3] #from third with step 3 
    print station1 
    print station2 
    print station3 

Wenn Sie jedoch Wert andere Trennzeichen ändern split() Argument es verwenden.

EDIT

Sie Python 3.x verwenden werden müssen, so müssen Sie Karte in der Liste konvertieren. In 3.x gibt map() Iterator zurück.

1
with open("myfile.txt") as f: 
    lines = [line.rstrip('\n').split(" ") for line in f] 


station_1_data = lines[0::3] 

station_2_data = lines[1::3] 

station_3_data = lines[2::3] 
+0

Es funktioniert nicht. Können Sie weitere Hilfe anbieten? Danke – Barack

+0

in welcher Weise funktioniert es nicht? Erhalten Sie eine Fehlermeldung oder ist die Ausgabe nicht das richtige Format? – RHSmith159

+0

Ich habe etwas wie das: [, , , – Barack

Verwandte Themen