gpt4 book ai didi

python - 是否可以使用 Pandas 数据框或任何其他方式在不考虑闰年 2 月 29 日的情况下插入日期?

转载 作者:行者123 更新时间:2023-12-04 10:35:04 25 4
gpt4 key购买 nike

我有一个 65 年(1941-2005)的时间序列。我在数据框中插入了一个日期列,如下所示:

Dataset= pd.read_csv('city10.csv', header = None)
Dataset['Date'] = pd.date_range(start='1/1/1951', periods=len(Dataset), freq='D')
Dataset.set_index('Date', inplace=True)

这将生成以下数据帧
Date         0       1       2       3  ...       5       6        7         8                                                                
1941-01-01 0.0 17.844 155.33 426.53 ... 61.102 47.929 -4.58980 -4.597900
1941-01-02 0.0 18.582 124.23 425.69 ... 70.191 51.980 -3.00210 -3.793400
1941-01-03 0.0 19.464 111.64 425.03 ... 74.315 56.936 -1.63070 -2.724700
... ... ... ... ... ... ... ... ...
2005-11-23 0.0 17.832 140.09 439.76 ... 63.003 49.942 -0.79576 -5.252300
2005-11-24 0.0 17.904 149.54 439.58 ... 58.072 47.666 -4.88510 -5.032600

上面生成的日期生成闰年的 2 月 29 日。我不想生成 2 月 29 日的日期,即对于我想考虑每年 365 天的系列。它不应在闰年生成 2 月 29 日。

最佳答案

一种想法是生成 date_range长度更长,然后删除 29.2.并按 DataFrame 的实际长度分配给列:

d = pd.date_range(start='1/1/1951', periods=len(Dataset) + int(len(Dataset) // 365), freq='D')
d = d[(d.month != 2) | (d.day != 29)]

Dataset['Date'] = d[:len(Dataset)]

关于python - 是否可以使用 Pandas 数据框或任何其他方式在不考虑闰年 2 月 29 日的情况下插入日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60221204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com