当前位置:   article > 正文

pandas读取文件出错:UnicodeDecodeError: ‘utf-8‘ codec?

unicodedecodeerror

Python数据分析过程中,我们经常需要使用Pandas库来读取各种文件格式的数据,如CSV、Excel等。但是,有时候在读取文件时会遇到如下错误:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte
这个错误是因为您的文件中包含了Pandas不支持的字符,导致解码失败并抛出UnicodeDecodeError。


解决方案1:正确指定文件编码
在读取文件时,通过encoding参数指定文件编码,例如:

  1. python
  2. df = pd.read_csv('yourfile.csv', encoding='GBK')


解决方案2:忽略错误字符
在读取文件时,通过error='ignore'忽略错误字符:

  1. python  
  2. df = pd.read_csv('yourfile.csv', encoding='utf-8', error='ignore')


解决方案3:替换错误字符
通过error='replace'将错误字符替换为?:

  1. python
  2. df = pd.read_csv('yourfile.csv', encoding='utf-8', error='replace')


解决方案4:跳过错误行
通过error='skip'跳过包含错误字符的行:

  1. python
  2. df = pd.read_csv('yourfile.csv', encoding='utf-8', error='skip'


解决方案5:修复文件编码
可以打开文件并将编码转换为utf-8,然后保存:

  1. python
  2. with open('yourfile.csv', encoding='GBK') as f:
  3.     content = f.read()  
  4. with open('yourfile.csv', 'w', encoding='utf-8') as f:  
  5.     f.write(content)  
  6. 然后就可以正常读取了: 
  7. python
  8. df = pd.read_csv('yourfile.csv')


希望这些解决方案能帮助大家解决Pandas读取文件时遇到的UnicodeDecodeError问题。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/151078
推荐阅读
相关标签
  

闽ICP备14008679号