gpt4 book ai didi

python - 从今天的日期中减去 pandas Dataframe 的值

转载 作者:行者123 更新时间:2023-11-28 20:01:46 25 4
gpt4 key购买 nike

我有一个如下所示的数据框:

Name  A    B    C
D1 1 3 3
D2 2 4 4
D3 2 1 1

如何创建一个相同大小的新数据框,其中每个值都是今天的日期减去我的第一个数据框的值?

例如,如果今天是 2018-04-27,我的新数据框将如下所示:

Name  A             B             C  
D1 2018-04-26 2018-04-24 2018-04-24
D2 2018-04-25 2018-04-23 2018-04-23
D3 2018-04-25 2018-04-26 2018-04-26

我认为解决方案将包括类似

df2.iloc[1,1] = datetime.today() - timedelta(days=df1[1,1])

但我遇到了各种类型错误和遍历原始 df 的问题

最佳答案

import datetime as dt
from datetime import timedelta
import pandas as pd

df = pd.DataFrame({'Name':['D1','D2','D3'],'A':[1,2,2],'B':[3,4,1],'C':[3,4,1]})
df.set_index('Name', inplace=True)
df2 = df.applymap(lambda x: dt.date.today() - timedelta(days = x))

df2
A B C
Name
D1 2018-04-26 2018-04-24 2018-04-24
D2 2018-04-25 2018-04-23 2018-04-23
D3 2018-04-25 2018-04-26 2018-04-26

Applymap是您要使用的

编辑:添加导入以避免日期时间导入问题,如 here 所示

关于python - 从今天的日期中减去 pandas Dataframe 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50067804/

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