我正在读取一个德国日期格式的csv文件。 在这篇文章里似乎没问题:
Picking dates from an imported CSV with pandas/python
然而,在我的情况下,日期似乎不被认为是这样。 我在测试文件中找不到任何错误的字符串。
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]
这将导致:
因此,带有日期的列不被认为是这样的。 我在这里做错什么了? 或者这个日期格式不兼容?
使用read_csv的date_parser参数传递自定义日期解析函数(用相关日期格式包装strptime的lambda)
pandas.read_csv
如果使用
parse_dates=True
,则read_csv
尝试parse the index as a date。 因此,您还需要使用index_col=[0]
将第一列声明为索引:或者,如果不希望
Datum
列成为索引,可以使用parse_dates=[0]
显式告诉read_csv
将第一列解析为日期:在引擎盖下
read_csv
使用dateutil.parser.parse
解析日期字符串:因为
dateutil.parser
在解析DD.MM.YYYY
格式的日期字符串时没有问题,所以您不必在这里声明自定义日期解析器。也许这会有帮助
相关问题 更多 >
编程相关推荐