读取CSV文件

时间:2019-09-30 03:42:14

标签: python-3.x pandas

我正在尝试读取CSV文件,但抛出错误。我无法理解语法的问题,还是需要向read_csv添加更多属性。

我在

上尝试了解决方案
  

UnicodeDecodeError:'utf-8'编解码器无法解码位置的字节0x96   21:无效的起始字节   也一样但它不起作用

import pandas as pd


#Assign file_path variable
file_path = 'rawdump_24th_Sep.csv'

#assign dataframe
df1 = pd.read_csv(file_path,index_col=0)

df.head()

[错误]

  

UnicodeDecodeError跟踪(最近的调用)   最后)pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_tokens()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_with_dtype()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._string_convert()

     

pandas中的pandas / _libs / parsers.pyx._libs.parsers._string_box_utf8()

     

UnicodeDecodeError:'utf-8'编解码器无法解码位置的字节0x96   21:无效的起始字节

     

在处理上述异常期间,发生了另一个异常:

     

UnicodeDecodeError跟踪(最近的调用)   最后)         6         7#分配数据框   ----> 8 df1 = pd.read_csv(file_path,index_col = 0)         9        10 df.head()

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py在   parser_f(filepath_or_buffer,sep,分隔符,标头,名称,index_col,   usecols,squeeze,前缀,mangle_dupe_cols,dtype,引擎,转换器,   true_values,false_values,skipinitialspace,skiprows,skipfooter,   nrows,na_values,keep_default_na,na_filter,详细,   skip_blank_lines,parse_dates,infer_datetime_format,keep_date_col,   date_parser,dayfirst,迭代器,chunksize,压缩,数千,   十进制,换行符,quotechar,引号,双引号,escapechar,   注释,编码,方言,tupleize_cols,error_bad_lines,   warn_bad_lines,delim_whitespace,low_memory,memory_map,   float_precision)       700个skip_blank_lines = skip_blank_lines)       701   -> 702 return _read(filepath_or_buffer,kwds)       703       704 parser_f。名称 =名称

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py在   _read(filepath_or_buffer,kwds)       433       434尝试:   -> 435数据= parser.read(行)       436最后:       437 parser.close()

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py以read(self,   1137 def读取(self,nrows = None):1138 nrows =   _validate_integer('nrows',nrows)   -> 1139 ret = self._engine.read(nrows)1140 1141#可能会更改列/ col_dict

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py以read(self,   1993 def读取(自我,nrows =无):1994尝试:   -> 1995数据= self._reader.read(nrows)1996,但StopIteration:1997年,如果self._first_chunk:

     

pandas._libs.parsers.TextReader.read()中的pandas / _libs / parsers.pyx

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._read_low_memory()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._read_rows()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_column_data()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_tokens()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_with_dtype()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._string_convert()

     

pandas中的pandas / _libs / parsers.pyx._libs.parsers._string_box_utf8()

     

UnicodeDecodeError:'utf-8'编解码器无法解码位置的字节0x96   21:无效的起始字节。

已更新

import pandas as pd


#Assign file_path variable
file_path = 'rawdump_24th_Sep.csv'

#assign dataframe
df1 = pd.read_csv(file_path,index_col=0)

df1.head()
  

UnicodeDecodeError跟踪(最近的调用)   最后)pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_tokens()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_with_dtype()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._string_convert()

     

pandas中的pandas / _libs / parsers.pyx._libs.parsers._string_box_utf8()

     

UnicodeDecodeError:'utf-8'编解码器无法解码位置的字节0x96   21:无效的起始字节

     

在处理上述异常期间,发生了另一个异常:

     

UnicodeDecodeError跟踪(最近的调用)   最后)         6         7#分配数据框   ----> 8 df1 = pd.read_csv(file_path,index_col = 0)         9        10 df1.head()

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py在   parser_f(filepath_or_buffer,sep,分隔符,标头,名称,index_col,   usecols,squeeze,前缀,mangle_dupe_cols,dtype,引擎,转换器,   true_values,false_values,skipinitialspace,skiprows,skipfooter,   nrows,na_values,keep_default_na,na_filter,详细,   skip_blank_lines,parse_dates,infer_datetime_format,keep_date_col,   date_parser,dayfirst,迭代器,chunksize,压缩,数千,   十进制,换行符,quotechar,引号,双引号,escapechar,   注释,编码,方言,tupleize_cols,error_bad_lines,   warn_bad_lines,delim_whitespace,low_memory,memory_map,   float_precision)       700个skip_blank_lines = skip_blank_lines)       701   -> 702 return _read(filepath_or_buffer,kwds)       703       704 parser_f。名称 =名称

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py在   _read(filepath_or_buffer,kwds)       433       434尝试:   -> 435数据= parser.read(行)       436最后:       437 parser.close()

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py以read(self,   1137 def读取(self,nrows = None):1138 nrows =   _validate_integer('nrows',nrows)   -> 1139 ret = self._engine.read(nrows)1140 1141#可能会更改列/ col_dict

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ io \ parsers.py以read(self,   1993 def读取(自我,nrows =无):1994尝试:   -> 1995数据= self._reader.read(nrows)1996,但StopIteration:1997年,如果self._first_chunk:

     

pandas._libs.parsers.TextReader.read()中的pandas / _libs / parsers.pyx

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._read_low_memory()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._read_rows()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_column_data()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_tokens()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._convert_with_dtype()

     

pandas / _libs / parsers.pyx在   pandas._libs.parsers.TextReader._string_convert()

     

pandas中的pandas / _libs / parsers.pyx._libs.parsers._string_box_utf8()

     

UnicodeDecodeError:'utf-8'编解码器无法解码位置的字节0x96   21:无效的起始字节

2 个答案:

答案 0 :(得分:0)

“ rawdump_24th_Sep.csv”应该位于保存.py文件的同一文件夹中

import pandas as pd
df1 = pd.read_csv('rawdump_24th_Sep.csv')
df1

答案 1 :(得分:0)

如果您的csv文件不合适,那么您会收到此错误。您应该尝试另一个数据集。