【发布时间】:2019-10-07 00:19:58
【问题描述】:
我发现了许多与我类似的问题,但没有一个能准确回答(this one 最接近,但它侧重于 ruby)。
我有一个这样的熊猫数据框:
import pandas as pd
import numpy as np
df = pd.DataFrame({'Date': pd.date_range('2014-10-03', '2015-10-02', freq='1D'), 'Variable': np.random.randn(365)})
df.head()
Out[272]:
Date Variable
0 2014-10-03 0.637167
1 2014-10-04 0.562135
2 2014-10-05 -1.069769
3 2014-10-06 0.556997
4 2014-10-07 0.253468
我想对从 1 月 1 日到 12 月 31 日的数据进行排序,忽略 Date 列的年份部分。背景是我想跟踪一年中Variable 的变化,但我的月经从十月份开始到结束。
我想为月份和年份创建一个单独的列,然后按这些列进行排序。但我不确定如何以“正确”和简洁的方式做到这一点。
预期输出:
Date Variable
0 01-01 0.637167 # (Placeholder-values)
1 01-02 0.562135
2 01-03 -1.069769
3 01-04 0.556997
4 01-05 0.253468
【问题讨论】:
标签: python pandas sorting datetime