ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python – Pandas ValueError:’Date’不在列表中

2019-08-28 10:55:06  阅读:297  来源: 互联网

标签:python pandas encoding vim utf-8


我正在阅读Pandas“烹饪书”第1章,bikes.csv的例子.当我尝试将parse_dates更改为[‘Date’]时,dayfirst = True,index_col就像这样:
(在线:在[6]中,在烹饪书的第1章中)

fixed_df = pd.read_csv('../data/bikes.csv', sep=';', encoding='latin1', parse_dates=['Date'], dayfirst=True, index_col='Date')

我明白了:
ValueError:’日期’不在列表中.
在我写这篇文章之前,我试试这些解决方案:

1st:utf-8 bom problem

据我所知,在utf-8中使用bom会产生一些问题并导致此错误.另外“Dates”系列在阅读时被大熊猫接受为元组? (很抱歉,如果我用错误的单词写,但这是我记得的,我不是Python的专业人员)我尝试使用此suggestion转换编码:
“utf-8-sig”编解码器提供了一个没有BOM的unicode字符串:

fp = open("file.txt")
s = fp.read()
u = s.decode("utf-8-sig")

即使我没有得到任何错误,它也没有用.

第二次:Vim
我尝试这些来改变编码

iconv -f UTF-8 -t ISO-8859-1 infile.txt > outfile.txt

还有这个,

vim +"set nobomb | set fenc=utf8 | x" filename.txt

它们都不起作用.

第3步:当我用vim打开它时,我尝试更改文件编码.

set fileencoding = utf-8-sig(以及其他可能的编码,如ANSI,ASCII等)
我收到这个错误

E213: Cannot convert (add ! to write without conversion)

你能帮帮我吗,我在哪里错过?提前谢谢了

解决方法:

使用您提供的URL

url = 'http://donnees.ville.montreal.qc.ca/dataset/f170fecc-18db-44bc-b4fe-5b0b6d2c7297/resource/d54cec49-349e-47af-b152-7740056d7311/download/comptagevelo2012.csv'

df = pd.read_csv(url, sep=',', parse_dates={'datetime':[0, 1]}, index_col='datetime')

df.head()

            Rachel / Papineau  Berri1  Maisonneuve_2  Maisonneuve_1  Brébeuf  \
datetime                                                                       
2012-01-01                 16      35             51             38      5.0   
2012-02-01                 43      83            153             68     11.0   
2012-03-01                 58     135            248            104      2.0   
2012-04-01                 61     144            318            116      2.0   
2012-05-01                 95     197            330            124      6.0   

我已经更改了sep和encoding参数,因为该文件中的分隔符是逗号,编码是utf-8(read_csv的默认值).有一个未命名的时间列,您也可以使用它来包含在解析中.在这个例子中,我认为它们都是零,但在其他情况下这可能是有用的.

标签:python,pandas,encoding,vim,utf-8
来源: https://codeday.me/bug/20190828/1751227.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有