【发布时间】:2017-06-29 21:35:22
【问题描述】:
我是 Pandas 的新手,并试图对包括闰年在内的一些年份进行逐年比较。他们的“dayofyear”功能很棒……除非有闰年。 这是我的代码:
df = pd.read_csv('myfile.csv')
df['Date'] = pd.to_datetime(df['Date'])
df['Day_of_Year'] = df['Date'].dt.dayofyear
## Deal with 2008 leap year
df_2008_1st = df[(df['Date'] >= '01/01/2008')
& (df['Date'] <= '02/28/2008')]
df_2008_2nd = df[(df['Date'] >= '03/01/2008')
& (df['Date'] <= '12/31/2008')]
df_2008_2nd['Day_of_Year'] = df_2008_2nd['Day_of_Year'] -1
df_2008 = df_2008_1st.append(df_2008_2nd)
我的问题分为两个部分,一个可能是主观的。
首先,必须有一种更好、更短、更快的方式来编写这段代码。
这是可行的,但我确信它更容易完成一些编码。
其次,我将用这个制作年度销售数字的每日比较图表。我不知道标准做法是什么——阅读闰年的代码建议,我可以找到一个关于如何在实践中处理这个问题的硬性和快速指南。有人愿意分享他们在实践中如何处理闰日数据吗?
谢谢你, 我
【问题讨论】:
标签: python python-3.x pandas leap-year