gpt4 book ai didi

python - Pandas :减去两个日期列,结果是一个整数

转载 作者:IT老高 更新时间:2023-10-28 21:14:41 24 4
gpt4 key购买 nike

我在 Pandas 数据框中有两列是日期。

我希望从另一列中减去一列,结果是天数的差异作为整数

查看数据:

df_test.head(10)
Out[20]:
First_Date Second Date
0 2016-02-09 2015-11-19
1 2016-01-06 2015-11-30
2 NaT 2015-12-04
3 2016-01-06 2015-12-08
4 NaT 2015-12-09
5 2016-01-07 2015-12-11
6 NaT 2015-12-12
7 NaT 2015-12-14
8 2016-01-06 2015-12-14
9 NaT 2015-12-15

我已经成功创建了一个新列,不同之处:

df_test['Difference'] = df_test['First_Date'].sub(df_test['Second Date'], axis=0)
df_test.head()
Out[22]:
First_Date Second Date Difference
0 2016-02-09 2015-11-19 82 days
1 2016-01-06 2015-11-30 37 days
2 NaT 2015-12-04 NaT
3 2016-01-06 2015-12-08 29 days
4 NaT 2015-12-09 NaT

但是我无法获得结果的数字版本:

df_test['Difference'] = df_test[['Difference']].apply(pd.to_numeric)     

df_test.head()
Out[25]:
First_Date Second Date Difference
0 2016-02-09 2015-11-19 7.084800e+15
1 2016-01-06 2015-11-30 3.196800e+15
2 NaT 2015-12-04 NaN
3 2016-01-06 2015-12-08 2.505600e+15
4 NaT 2015-12-09 NaN

最佳答案

怎么样:

df_test['Difference'] = (df_test['First_Date'] - df_test['Second Date']).dt.days

如果没有缺失值(NaT),这将返回差异为 int,如果有,则返回 float

Pandas 在 Time series / date functionality 上有丰富的文档。和 Time deltas

关于python - Pandas :减去两个日期列,结果是一个整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37840812/

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