@vanKey: Da verwendest Du jetzt Pandas und versuchst eine Datei die keine CSV-Datei ist also solche einzulesen, was nicht geht.
Entweder Du machst das ohne Pandas, mit Python-Bord-Mitteln, oder falls das eine Datei mit festen Spaltenbreiten ist, und 6 bis 10 eigentlich zwei Spalten darstellen, dann gibt es eine Funktion um solche Daten in einen DataFrame einzulesen. Oder es sind zwei Spalten die durch zwei Leerzeichen getrennt sind, dann könnte man das als Trenner angeben und explizit angeben das die zweite Spalte als Text eingelesen werden soll und mit den `Series.str`-Methoden den entsprechenden Teil ausschneiden.
Was bedeuten die Daten denn? Wie viele Spalten sind das eigentlich?
Die drei Todfeinde des Programmieres:
Sonnenlicht, frische Luft und das unerträgliche Gebrüll der Vögel.
es handelt sich hierbei um eine Datei, die keine konstante Anzahl von Spalten hat.
Mal hat eine Zeile 2, mal 3, mal 4 Spalten. Man kann die Datei also nicht sauber einlesen.
D.h. man muss wirklich aus jeder Zeile z.B. den Bereich von der 6. bis zur 10. Zeile auslesen und das dann separat abspeichern.
@vanKey: Wenn die Datei unregelmässig aufgebaut ist, dann kann man die nicht (direkt) als `DataFrame` einlesen. Und sollte das auch nicht auf biegen und brechen irgendwie versuchen. Da wird ein unpassendes Werkzeug missbraucht, der Code wird komplizierter und schwerer zu verstehen und damit auch fehleranfälliger. Pandas ist nicht die Lösung für alle Probleme. Wenn man einen Hammer hat, sollte man aufpassen nicht jedes Problem als Nagel zu sehen — es gibt auch Schrauben. Klar kann man die auch mit einem Hammer rein kloppen, aber das passende Werkzeug ist der nicht, das wäre ein Schraubendreher.
#!/usr/bin/env python3
def main():
with open("test.txt", encoding="ascii") as lines:
result = [line[5:10] for line in lines]
print(result)
if __name__ == "__main__":
main()
vanKey hat geschrieben: ↑Donnerstag 1. September 2022, 08:40
Ok, top vielen Dank.
Es ist schon leicht amüsant, deine Reaktion hier zu sehen, weil die Lösung wirklich einfachstes Standard-Python war. Das zeigt, dass sich heutige Anfänger gerade im Bereich der Datenverarbeitung teilweise nicht mehr wirklich mit Python beschäftigen, sondern nur noch Pandas kennen. Finde ich keine so tolle Entwicklung...