使用pandas对数据集中的数据进行排序

时间:2017-12-22 20:35:52

标签: python pandas

我有一个数据集,其中包含一个日期列。此列的格式为dd.mm.yyyy.

我尝试使用推荐的方法对日期进行排序,以将范围限制为“12月”。和' 2014。'但是,这些方法似乎都没有正常运作。我正在考虑重新安排它,以便它的格式为yyyy.mm.dd.我不确定如何去做这件事。有人可以帮忙吗?

代码如 (df['date']>'1-12-2014')&(df['date']<='31-12-2014')似乎无法工作。

1 个答案:

答案 0 :(得分:0)

问题是你的日期是大熊猫不会识别为日期的字符串。您想先将它们转换为datetime对象。有几种方法可以做到这一点:

df['date'] = df['date'].apply(lambda d: pd.strptime(d, '%d.%m.%Y'))

df['date'] = pd.to_datetime(df['date'], format = '%d.%m.%Y')

在这两种情况下,关键是使用与您的数据匹配的格式字符串。然后,您可以按照自己的意愿过滤:

from datetime import date
df[(df['date'] >= date(2014, 12, 1))&(df['date'] <= date(2014, 12, 31))]