Python。如何在数据框中创建一个新列,该列等于从2个特定日期开始的天数?

问题描述 投票:0回答:1

我已经有一个数据框中的日期列表。我想创建一个新列来计算这些日期与2020-06-26之间的天数。第一次在这里提问,因此对措辞不佳表示歉意。

日期列当前是索引列

python pandas dataframe datetime
1个回答
0
投票

使用日期时间库和熊猫的apply函数

from datetime import date

df = pd.DataFrame(
    {'date': [date(2020, 6, 10), date(2020, 6, 11), date(2020, 6, 12), date(2020, 6, 13)],
    })

def number_of_days_since(df):
    return date(2020,6, 26) - df['date']

df['days_since'] = df.apply(lambda x: date(2020,6, 26) - df['date'], axis=1)


0
投票

您可以将这两列设置为日期时间,并减去它们就会创建新的列,其天数(两个日期之间的差)。

df['Date1'] = pd.to_datetime(df['Date1']) 
df['Date2'] = pd.to_datetime(df['Date2']) 
df ['days'] = df['Date1'] - df['Date2']
© www.soinside.com 2019 - 2024. All rights reserved.