在 pandas 中更改默认日期 "quarter"
Change dates of default "quarter" in pandas
有什么方法可以更改 Pandas / Numpy 中被解释为“季度”的“默认开始和结束日期”?我查看了文档并尝试阅读 pandas 源代码,但没有显示任何结果。
import pandas as pd
date_range = pd.date_range(start='2020-01-01', end='2021-01-01')
df_dates = pd.DataFrame({'dates' : date_range}, index = date_range)
print(df_dates['dates'].dt.quarter.drop_duplicates())
这些季度“开始日期”的结果。
2020-01-01 1
2020-04-01 2
2020-07-01 3
2020-10-01 4
Name: dates, dtype: int64
因此,如果可能的话,我想将这些更改为不同的日期。作为存在于“当前会话”中的“已保存偏移量”...
在 dt.quarter-accessor 上(如果提前一个月),期望的输出是这样的。
2020-02-01 1
2020-05-01 2
2020-08-01 3
2020-11-01 4
Name: dates, dtype: int64
你的意思是?
print(df_dates['dates'].dt.quarter.drop_duplicates().shift(1, freq='MS'))
输出:
2020-02-01 1
2020-05-01 2
2020-08-01 3
2020-11-01 4
Name: dates, dtype: int64
有什么方法可以更改 Pandas / Numpy 中被解释为“季度”的“默认开始和结束日期”?我查看了文档并尝试阅读 pandas 源代码,但没有显示任何结果。
import pandas as pd
date_range = pd.date_range(start='2020-01-01', end='2021-01-01')
df_dates = pd.DataFrame({'dates' : date_range}, index = date_range)
print(df_dates['dates'].dt.quarter.drop_duplicates())
这些季度“开始日期”的结果。
2020-01-01 1
2020-04-01 2
2020-07-01 3
2020-10-01 4
Name: dates, dtype: int64
因此,如果可能的话,我想将这些更改为不同的日期。作为存在于“当前会话”中的“已保存偏移量”...
在 dt.quarter-accessor 上(如果提前一个月),期望的输出是这样的。
2020-02-01 1
2020-05-01 2
2020-08-01 3
2020-11-01 4
Name: dates, dtype: int64
你的意思是?
print(df_dates['dates'].dt.quarter.drop_duplicates().shift(1, freq='MS'))
输出:
2020-02-01 1
2020-05-01 2
2020-08-01 3
2020-11-01 4
Name: dates, dtype: int64