Pandas读取文件-- OSError : Initializing from file failed 报错(windows)

使用python处理数据,用 pandas 进行文件读取

import numpy as np  
import pandas as pd 
import matplotlib.pyplot as plt        #导入需要的包

df = pd.read_csv('./data/地市级党委书记数据库.csv',encoding = 'UTF-8')    #读取文件
df.head()

但是运行后,却报错  Initializing from file failed

OSError                                   Traceback (most recent call last)
<ipython-input-6-acfd7c7baff1> in <module>()
----> 1 df = pd.read_csv('./data/地市级党委书记数据库.csv',encoding = 'UTF-8')
      2 df.head()

.......(省略部分报错代码)
~\Anaconda3\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
    983     def _make_engine(self, engine='c'):
    984         if engine == 'c':
--> 985             self._engine = CParserWrapper(self.f, **self.options)
    986         else:
    987             if engine == 'python':
......(省略部分报错代码)

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader.__cinit__ (pandas\_libs\parsers.c:4209)()

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._setup_parser_source (pandas\_libs\parsers.c:8895)()

OSError: Initializing from file failed

解决方法一:

添加引擎参数 engine = 'python'

df = pd.read_csv('./data/地市级党委书记数据库.csv',encoding = 'UTF-8',engine='python')

如图成功读取


解决方法二:

先用 pyhton的open()函数打开文件,创建一个file对象,再用pandas读

f = open('./data/地市级党委书记数据库.csv','r', encoding='UTF-8')
df = pd.read_csv(f, encoding='UTF-8')

如图成功读取


猜你喜欢

转载自blog.csdn.net/zz_moon/article/details/80640626