发布于2019-10-07 09:56 阅读(434) 评论(0) 点赞(30) 收藏(3)
我正在读取德语日期格式的csv文件。似乎在这篇文章中工作正常:
但是,在我看来,日期似乎不被识别。我在测试文件中找不到任何错误的字符串。
import pandas as pd
import numpy as np
%matplotlib inline
import matplotlib.pyplot as plt
from matplotlib import style
from pandas import DataFrame
style.use('ggplot')
df = pd.read_csv('testdata.csv', dayfirst=True, parse_dates=True)
df[:5]
结果是:
因此,带有日期的列不能这样识别。我在这里做错了什么?还是这个日期格式根本不兼容?
如果使用,parse_dates=True
则read_csv
尝试将索引解析为日期。因此,您还需要使用以下命令将第一列声明为索引index_col=[0]
:
In [216]: pd.read_csv('testdata.csv', dayfirst=True, parse_dates=True, index_col=[0])
Out[216]:
morgens mittags abends
Datum
2015-03-16 382 452 202
2015-03-17 288 467 192
或者,如果您不希望该Datum
列成为索引,则可以使用
parse_dates=[0]
显式告诉read_csv
将第一列解析为日期:
In [217]: pd.read_csv('testdata.csv', dayfirst=True, parse_dates=[0])
Out[217]:
Datum morgens mittags abends
0 2015-03-16 382 452 202
1 2015-03-17 288 467 192
内幕read_csv
用于dateutil.parser.parse
解析日期字符串:
In [218]: import dateutil.parser as DP
In [221]: DP.parse('16.03.2015', dayfirst=True)
Out[221]: datetime.datetime(2015, 3, 16, 0, 0)
由于dateutil.parser
解析DD.MM.YYYY
格式格式的日期字符串没有问题,因此您不必在此处声明自定义日期解析器。
作者:黑洞官方问答小能手
链接:https://www.pythonheidong.com/blog/article/132099/8c53a42c85ed10a24a7b/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!