Eine Spalte aus der Textdatei extrahieren

Ich habe eine Textdatei (riesige Menge an Float-Nummern) mit 25 Spalten. Ich möchte die Spalte 14 extrahieren und sie nach Spalte 15 teilen. Ich konnte diese beiden Spalten nicht extrahieren.
Codes:

with open('sample for north.txt') as infile: for line in infile: print(line.split()[13]) 

Fehler: Listenindex außerhalb des zulässigen Bereichs

  • Effiziente Art der Logarithmusfunktion in einer spärlichen Matrix
  • Erstellen einer Matrix aus Pandas dataframe, um Verbundenheit anzuzeigen
  • Wie implementiere ich zusätzlich zu allen Submatrix-Elementen?
  • Multiplizieren von Elementen in einem spärlichen Array mit Zeilen in Matrix
  • Einfachste Möglichkeit, modulare Matrixinversion mit Python durchzuführen?
  • Zersetzung von Matrizen für CPLEX und maschinelle Lernanwendung
  • 2 Solutions collect form web for “Eine Spalte aus der Textdatei extrahieren”

    Sie erhalten den Fehler Error : list index out of range da es nicht genügend Spalten gibt (zumindest auf der angegebenen Zeile). Es ist besser zu überprüfen, etwas in dieser Zeile:

     with open('sample for north.txt') as infile: for line in infile: parts = line.split() if len(parts) > 13: # or whatever is appropriate print(parts[13]) 

    Erläuterung: Wenn Sie eine Zeile teilen, gibt sie eine Liste der Elemente zurück. ZB, wenn es 3 Spalten gab, würde .split() eine Liste mit 3 Items zurückgeben. Die Länge der Liste variiert je nach den Daten mit jeder Kurslinie.

    Ihr Code nahm an, dass es immer die erforderliche Anzahl von Artikeln auf einer bestimmten Zeile gab und versuchte, auf das Element in der Liste bei Index 13 zuzugreifen. Allerdings muss es mindestens eine Zeile in Ihrer Datendatei geben, wo dies nicht der Fall ist Ist der Grund, warum dein Code abgestürzt ist. Daher ist es besser, die Länge der Liste zu untersuchen, bevor man versucht, auf einen bestimmten Index in der Liste zuzugreifen.

    Dh, ich spaltete die Linie in ihre "Teile" und untersuchte dann ihre Länge, bevor ich versuchte, darauf zuzugreifen.

    Split () whitout jeder Trennzeichen Informationen, macht die Aufteilung auf Räume:

     "1 2 3".split() returns ["1","2","3"] 

    Seien Sie also sicher, welche Trennzeichen Sie verwenden. Schau nach str.split.

    Beachten Sie auch, dass die Liste aus Strings besteht, nicht aus numerischen Werten.

    Python ist die beste Programmiersprache der Welt.