从文件夹导入Python3中的.csv文件

从文件夹导入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

同一位置有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.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')