无法读取.csv文件.EmptyDataError:文件中没有要分析的列



我正在使用MAC笔记本电脑读取.csv文件,但出现了以下错误:

EmptyDataError:文件中没有要分析的列。

下面是我的数据文件:.csv文件预览

我甚至检查了文件的文件路径是否正确,结果证明它很好。

path = 'UserssyedwaqarHuma-IBM-MLhealthcare-dataset-stroke-data.csv' 
con = sq3.Connection(path)

我试图定义这样的路径,但它总是给出错误:

path = 'Users/syedwaqar/Huma-IBM-ML/healthcare-dataset-stroke-data.csv'
con = sq3.Connection(path)

OperationalError:无法打开数据库文件

之后:我试图检查文件路径是否正确,它表明它是正确的。我想知道问题出在哪里。

这是写下这行代码后的主要错误:

data = pd.read_csv(path)

----------------------------------------------------------------------------EmptyDataError Traceback(最近调用最后)---->1数据=pd.read_csv(路径,标头=无)

~/opt/anaconda3/lib/python3.8/site-packages/pandas/io/parsers.py inread_csv(filepath_or_buffer,sep,分隔符,标头,名称,index_col,usecols,crush,prefix,mangle_dupe_cols,dtype,engine,converters,true_values,false_values,skipintialspace,skiprows,skipfooter,nrows,na_values,keep_default_na,na_filter,verbose,skip_blank_lines、parse_dates、infer_datetime_format、keep_date_col,date_parser、dayfirst、cache_dates、迭代器、chunksize、压缩、,数千,decimal,lineterminator,quotechar,quoting,doublequote,escapechar,注释,编码,方言,error_bad_lines,warn_bad_lines、delim_whitespace、low_memory、memory_map、,float_precision)684)685-->686 return _read(filepath_or_buffer,kwds)687688

~/opt/anaconda3/lib/python3.8/site-packages/pandas/io/parsers.py in_读取(filepath_or_buffer,kwds)450451#创建解析器。-->452解析器=TextFileReader(fp_or_buf,**kwds)453454如果chunksize或迭代器:

~/opt/anaconda3/lib/python3.8/site-packages/pandas/io/parsers.py ininit(self、f、engine、**kwds)944 self.options["has_index_names"]=kwds["has_index_names"]945-->946自我_make_engine(self-engine)947948 def close(self):

~/opt/anaconda3/lib/python3.8/site-packages/pandas/io/parsers.py in_make_engine(self,engine)1176 def_make_engine;c":->1178自我_engine=CParserWrapper(self.f,**self.options)1179 else:1180 if engine==";python":

~/opt/anaconda3/lib/python3.8/site-packages/pandas/io/parsers.py ininit(self,src,**kwds)2006 kwds["usecols"]=self.users 2007->2008年自我_reader=解析器。TextReader(src,**kwds)2009 self.unamed_cols=self_reader.unnamed_cols 2010

pandas/libs/parsers.pyx熊猫_libs.parsers.TextReader.cinit()

EmptyDataError:文件中没有要分析的列

请帮我解决这个问题。我无法理解这个问题。

我尝试了很多方法来解决这个问题,但都无济于事。最后,在浏览了一堆关于在pandas数据帧中读取.csv文件的信息后,我自己找到了解决方案。我发布我自己问题的答案只是为了帮助那些有同样问题的人。无法读取.csv文件的原因有很多。人们必须检查他们文件的预览,并寻找所有需要在";pd.read_csv";基于文件预览的函数,如:分隔符类型(制表符分隔等)、空白标头(在这种情况下,标头=无)。如果问题仍然存在,在检查了需要放入的任何必需参数之后。那么问题可能出在文件路径上。中的类型

pwd

这将打印工作目录。然后您只需要在工作目录之后指定位置。例如。这显示了如何指定文件的路径指定工作目录后面的路径。如果你的文件在工作目录中,那么只需像我一样提到文件名。但是,如果您的文件位于其他文件夹中,则可以在工作目录之后指定后续文件夹例如,您的工作目录是"/用户/用户名";如果你的文件在"文档"中名为"huma"的文件夹中,那么你会写下以下代码:

path = 'Documents/huma/filename.csv'

或者将工作目录更改为文件所在的文件夹。使用以下代码:

cd /Users/Documents/huma/ 

上面的代码行更改了我的工作目录,现在我只需要指定文件名:

path = 'filename.csv' 

您可以使用以下代码检查您的文件是否存在于所描述的路径中:

os.path.isfile('filename.csv')

您可能使用了错误的分隔符。这通常来自你的Mac操作系统语言&区域设置。

看看这篇文章,你会得到解决这个问题所需的信息:https://harvestmedia.zendesk.com/hc/en-us/articles/360023978031-Opening-Excel-files-with-the-correct-CSV-list-separator

当我试图读入一个没有保存在机器本地的文件时,我得到了这个。例如,我使用dropbox来节省本地机器上的空间,但如果我尝试读取保存在"云中"的文件,我会遇到这个错误。我找到的解决这个问题的唯一方法是转到你机器上的文件,先将其保存在本地,然后让你的程序读取。最好的解决方案是写一些东西,先把文件拉下来,然后再读取,如果可能的话。

最新更新