Ich hat eine riesige (6G) txt-Datei mit einem Windows-Kommandozeilen-Programm erzeugt (samtools.exe):Pandas lesen Ausgabe, 0xff in Position 0
.\samtools.exe mpileup -O bamfile.bam > txtfile.tsv
Die erzeugte Datei ist eigentlich eine Tabelle getrennt durch Tab. Als ich versuchte, pandas.read_table zu verwenden, um es zu öffnen, es gibt mir:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
Als ich versuchte, die erste Zeile der Datei zu drucken, es ist wie folgt:
ÿþAL645882 473 N 1 ^!c I 1
Alles ist normal, außer dem erstes Zeichen Wenn ich es lese, benutze 'rb'
, tatsächlich ist das erste Zeichen 0xff
.
Ich möchte wirklich, dass diese Tabelle als Pandas DataFrame gelesen wird, die Datei ist riesig, gibt es sowieso ich kann Python das 0xff
Byte ignorieren lassen? Oder einfach das Byte in der Datei löschen?
Vielen Dank im Voraus!
Das funktioniert! Ich denke, Windows Powershell schreibt jetzt seine Ausgabe als "UTF-16". Ich versuchte eine andere "ls" Ausgabe in Powershell. Notepad ++ meldet, dass die Ausgabedatei die UCS-2 LE BOM-Codierung verwendet, die eine UTF-16-Codierung ist. – snail123815