首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >datetime64[ns]列中日期之间的30天间隔

datetime64[ns]列中日期之间的30天间隔
EN

Stack Overflow用户
提问于 2019-03-12 23:56:27
回答 3查看 55关注 0票数 0

我有以下形式的数据:

代码语言:javascript
复制
6460  2001-07-24 00:00:00    67.5      75.1   75.9   71.0   75.2    81.8
6490  2001-06-24 00:00:00    68.4      74.9   76.1   70.9   75.5    82.7
6520  2001-05-25 00:00:00    69.6      74.7   76.3   70.8   75.5    83.2
6550  2001-04-25 00:00:00    69.2      74.6   76.1   70.6   75.0    83.1
6580  2001-03-26 00:00:00    69.1      74.4   75.9   70.5   74.3    82.8
6610  2001-02-24 00:00:00    69.0      74.0   75.3   69.8   73.8    81.9
6640  2001-01-25 00:00:00    68.9      73.9   74.6   69.7   73.5    80.0
6670  2000-12-26 00:00:00    69.0      73.5   75.0   69.5   72.6    81.8
6700  2000-11-26 00:00:00    69.8      73.2   75.1   69.5   72.0    82.7
6730  2000-10-27 00:00:00    70.3      73.1   75.0   69.4   71.3    82.6
6760  2000-09-27 00:00:00    69.4      73.0   74.8   69.4   71.0    82.3
6790  2000-08-28 00:00:00    69.6      72.8   74.6   69.2   70.7    81.9
6820  2000-07-29 00:00:00    67.8      72.9   74.4   69.1   70.6    81.8

我希望所有的日期之间有30天的差距。我知道如何将特定的日期或月份添加到datetime对象,如下所示

代码语言:javascript
复制
ndfd = ndf['Date'].astype('datetime64[ns]')
ndfd = ndfd.apply(lambda dt: dt.replace(day=15))

但这没有考虑到每个月的天数差异。

如果我能够更改日期,只要它仍然在同一个月,我如何确保在我的数据中有一致的日期步长?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-03-13 00:20:21

您可以使用date_range

代码语言:javascript
复制
df['date'] = pd.date_range(start=df['date'][0], periods=len(df), freq='30D')
票数 2
EN

Stack Overflow用户

发布于 2019-03-13 00:02:07

IIUC您可以更改日期列,如下所示:

代码语言:javascript
复制
import datetime

a = df.iloc[0,0]  # first date, assuming date col is first 
df['date'] = [a + datetime.timedelta(days=30 * i) for i in range(len(df))]
票数 1
EN

Stack Overflow用户

发布于 2019-03-13 00:17:22

我还没有测试过,所以我不确定它是否像我想象的那样流畅。

您可以将第一天转换为序数,再加上30*i,然后再将其转换回来。

代码语言:javascript
复制
first_day=df.iloc[0]['date_column'].toordinal()
df['date']=(first_day+30*i for i in range(len(df))).fromordinal
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55125782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档