首页 > 解决方案 > 我有一个数据框,其数据列从 2005 年 1 月 1 日到 2014 年 12 月 31 日。我如何对列进行排序?

问题描述

输入:

data["Date"] = ["2005-01-01", "2005-01-02" , ""2005-01-03" ,..., "2014-12-30","2014-12-31"]

我如何对列进行排序,以使该列给出每年的第一个日期,每个日期的第二个日期,依此类推:

IE

输出:

data["Date"] = ["2005-01-01","2006-01-01","2007-01-01", ... "2013-12-31","2014-12-31"]

注意:假设日期列没有闰日

标签: pythondata-science

解决方案


为什么不尝试创建一个新列来更改日期格式?像这样 :

def change_format(row):
    date_parts = row.split('-')
    new_date = date_parts(2)+"-"+date_parts(1)+"-"+date_parts(0)
    return new_date

data["Date_new_format"] = data["Date"].apply(lambda row => change_format(row))

现在您可以根据 Date_new_format 列对数据框进行排序,您将获得所需的内容。


推荐阅读