从文件夹导入Python3中的.csv文件
同一位置有2个csv文件: 1-candidates.csv 2-Store.csv 当我使用此代码导入candidates.csv filw时,它将被导入:从文件夹导入Python3中的.csv文件,python,pandas,dataframe,unicode,Python,Pandas,Dataframe,Unicode,同一位置有2个csv文件: 1-candidates.csv 2-Store.csv 当我使用此代码导入candidates.csv filw时,它将被导入: data=pandas.read_csv("C:\\Users\\Nupur\\Desktop\\Ankit\\candidates.csv") 但当我使用相同的代码导入Store.csv文件时,它给出了错误: data=pandas.read_csv("C:\\Users\\Nupur\\Desktop\\Ankit\\Store.c
data=pandas.read_csv("C:\\Users\\Nupur\\Desktop\\Ankit\\candidates.csv")
但当我使用相同的代码导入Store.csv文件时,它给出了错误:
data=pandas.read_csv("C:\\Users\\Nupur\\Desktop\\Ankit\\Store.csv")
错误:
UnicodeDecodeError回溯(最近的呼叫
最后)中的pandas_libs\parsers.pyx
pandas._libs.parsers.TextReader._convert_tokens()
pandas_libs\parsers.pyx in
pandas._libs.parsers.TextReader._convert_with_dtype()
pandas_libs\parsers.pyx in
pandas.\u libs.parsers.TextReader.\u string\u convert()
pandas中的pandas\parsers.pyx.\u libs.parsers.\u string\u box\u utf8()
UnicodeDecodeError:“utf-8”编解码器无法在适当位置解码字节0xf6
9:起始字节无效
在处理上述异常期间,发生了另一个异常:
UnicodeDecodeError回溯(最近的呼叫
最后)在
---->1 data=pandas.read\u csv(“C:\Users\Nupur\Desktop\Ankit\Store.csv”)
中的C:\ProgramData\Anaconda3\lib\site packages\pandas\io\parsers.py
解析器f(文件路径或缓冲区、sep、分隔符、头、名称、索引列、,
usecols、squeeze、prefix、mangle_dupe_cols、数据类型、引擎、转换器、,
真值、假值、SKIPINITALSPACE、skiprows、nrows、,
不适用值,保留默认值,不适用筛选器,详细,跳过空白行,
解析日期,推断日期时间格式,保留日期列,日期解析器,
dayfirst、迭代器、chunksize、压缩、千、十进制、,
行终止符,引号,引号,转义符,注释,编码,
方言,元音,错误行,警告行,跳板行,
双引号,delim_空白,低内存,内存映射,
浮点数(精度)
676跳过空白行=跳过空白行)
677
-->678返回读取(文件路径或缓冲区,kwds)
679
680语法分析器f.名称=名称
中的C:\ProgramData\Anaconda3\lib\site packages\pandas\io\parsers.py
_读取(文件路径或缓冲区,kwds)
444
445试试:
-->446 data=parser.read(nrows)
447最后:
448解析器.close()
中的C:\ProgramData\Anaconda3\lib\site packages\pandas\io\parsers.py
读取(自身,nrows)1034提升值错误('skipfooter
迭代“”1035不支持
->1036 ret=自身。引擎读取(nrows)1037 1038可更改列/列目录
中的C:\ProgramData\Anaconda3\lib\site packages\pandas\io\parsers.py
读取(self,nrows)1846 def读取(self,nrows=None):1847尝试: ->1848 data=self.\u reader.read(nrows)1849,但StopIteration除外:1850如果self.\u first\u chunk: pandas中的pandas\parsers.pyx.\u libs.parsers.TextReader.read() pandas_libs\parsers.pyx in pandas._libs.parsers.TextReader._read_low_memory() pandas_libs\parsers.pyx in pandas._libs.parsers.TextReader._read_rows() pandas_libs\parsers.pyx in pandas.\u libs.parsers.TextReader.\u convert\u column\u data() pandas_libs\parsers.pyx in pandas._libs.parsers.TextReader._convert_tokens() pandas_libs\parsers.pyx in pandas._libs.parsers.TextReader._convert_with_dtype() pandas_libs\parsers.pyx in pandas.\u libs.parsers.TextReader.\u string\u convert() pandas中的pandas\parsers.pyx.\u libs.parsers.\u string\u box\u utf8() UnicodeDecodeError:“utf-8”编解码器无法在适当位置解码字节0xf6 9:起始字节无效 试着用这个
data=pandas.read_csv("C:\\Users\\Nupur\\Desktop\\Ankit\\Store.csv",encoding = "ISO-8859-1")
如果由于文件编码不是
pd.read\u csv()
文档中提到的默认值而导致编码错误,您可以通过先安装,然后再安装以下代码来查找文件编码:
import chardet
rawdata = open('D:\\path\\file.csv', 'rb').read()
result = chardet.detect(rawdata)
charenc = result['encoding']
print(charenc)
这将为您提供文件的编码
编码完成后,您可以读取为:
pd.read_csv('D:\\path\\file.csv',encoding = 'encoding you found')
或
您将获得所有编码的列表
希望您觉得这很有用。您是否尝试过:
data=pandas.read_csv("C:\\Users\\Nupur\\Desktop\\Ankit\\Store.csv", encoding='utf-8')
如果上述方法不起作用,那么您的编码格式似乎有所不同,我建议为Windows选择一些编码,例如encoding='iso-8859-1'
,encoding='cp1252'
或encoding='latin1'
或者尝试在文件名前面添加r
,以便将其视为“raw string
”,这样就不会对反斜杠进行特殊处理:
data=pandas.read_csv(r"C:\\Users\\Nupur\\Desktop\\Ankit\\Store.csv", encoding='cp1252')
Ankit可能重复,您是否尝试过
编码='utf-8'
?
data=pandas.read_csv(r"C:\\Users\\Nupur\\Desktop\\Ankit\\Store.csv", encoding='cp1252')