使用 pandas 在系列中创建包含今天日期和日期 +1 的列
Make a column with todays date and date +1 in a series using pandas
所以我想做一个列名调用日期
我将第一个条目设为今天的日期,即 23/07/2019
下一行是日期 + 1,即 24/07/2019 等等...
这在 Excel 中很容易完成,但我在 pandas 中尝试了这个简单的事情,但我不知道如何做!
我已经有一个名为 df 的日期框
所以记下今天的日期还是比较简单的。
df.Date = pd.datetime.now().date()
但我不确定哪个函数可以让我得到以下行中的日期+1。
谢谢
pd.date_range
就是您要找的。构建从今天开始的31天系列:
today = pd.Timestamp.now().normalize()
s = pd.date_range(today, today + pd.Timedelta(days=30), freq='D').to_series()
pd.date_range
可以用'today'
设置日期。规范化然后自己创建系列,否则 pandas
认为 DatetimeIndex 也应该是索引。
import pandas as pd
pd.Series(pd.date_range('today', periods=30, freq='D').normalize(),
name='Date')
0 2019-07-23
1 2019-07-24
...
28 2019-08-20
29 2019-08-21
Name: Date, dtype: datetime64[ns]
如果向 DataFrame 添加新列:
df['Date'] = pd.date_range('today', periods=len(df), freq='D').normalize()
所以我想做一个列名调用日期 我将第一个条目设为今天的日期,即 23/07/2019 下一行是日期 + 1,即 24/07/2019 等等...
这在 Excel 中很容易完成,但我在 pandas 中尝试了这个简单的事情,但我不知道如何做!
我已经有一个名为 df 的日期框 所以记下今天的日期还是比较简单的。
df.Date = pd.datetime.now().date()
但我不确定哪个函数可以让我得到以下行中的日期+1。 谢谢
pd.date_range
就是您要找的。构建从今天开始的31天系列:
today = pd.Timestamp.now().normalize()
s = pd.date_range(today, today + pd.Timedelta(days=30), freq='D').to_series()
pd.date_range
可以用'today'
设置日期。规范化然后自己创建系列,否则 pandas
认为 DatetimeIndex 也应该是索引。
import pandas as pd
pd.Series(pd.date_range('today', periods=30, freq='D').normalize(),
name='Date')
0 2019-07-23
1 2019-07-24
...
28 2019-08-20
29 2019-08-21
Name: Date, dtype: datetime64[ns]
如果向 DataFrame 添加新列:
df['Date'] = pd.date_range('today', periods=len(df), freq='D').normalize()