使用www.example.com _csv()加载.txt文件时出错pandas.read

qojgxg4l  于 2023-05-05  发布在  其他
关注(0)|答案(1)|浏览(94)

我试图使用pandas.read_csv()加载一个python文件。数据显示了热量计的Time vs HeatFlow。我想加载文件,以便Python将其作为两个独立的列读取。
下面是数据文件前几行的示例。
时间热流0 -4.266626
0.000028 -4.266519
0.000056 -4.266411
0.000083 -4.266316
0.000111 -4.266221
0.000139 -4.266125
0.000167 -4.26603
0.000194 -4.265958
0.000222 -4.265887
我已经成功地使用excel将.txt文件转换为制表符分隔的. txt。不幸的是,我的一些数据文件对excel来说太大了。
理想情况下,我将能够直接将原始.txt文件加载到Python中。
运行以下代码时:
将pandas导入为pd
data =pd.read_csv('TestFile.txt ')
我得到错误:
UnicodeDecodeError:'utf-8'编解码器无法解码位置0中的字节0xff:无效起始字节
我试过使用不同的编码和分隔符,但都没有用。我从来没有遇到过这个错误,不知道如何解决它。任何帮助是赞赏!

xcitsw88

xcitsw881#

当您尝试读取的文件具有与UTF-8不同的编码时,通常会发生此错误,UTF-8是pandas在阅读文件时使用的默认编码。所以如果你不确定你得到的是什么编码,用这个例子来给予你一种理解。如果您不确定文件的编码,可以尝试使用chardet库来查找它。

import pandas as pd
import chardet

with open('TestFile.txt', 'rb') as f:
    result = chardet.detect(f.read())  # detect the encoding of the file
    
data = pd.read_csv('TestFile.txt', encoding=result['encoding'])

相关问题