python-3.x - 在python中处理两位和四位数字年份的日期
问题描述
我有两个 DataFrame df:
A B
5/4/2018 8/4/2018
24/5/15 26/5/15
21/7/16 22/7/16
3/7/2015 5/7/2015
1/7/2016 1/7/2016
我想计算每一行的天数差异。
例如:
A B C
5/4/2018 8/4/2018 3
24/5/15 26/5/15 2
我尝试使用 pd.to_datetime 将数据帧转换为日期时间。但是,出现错误“ValueError:未转换的数据仍然存在:18”
尝试了以下代码:
import datetime as dt
df['A'] = pd.to_datetime(df['A'], format = "%d/%m/%y").datetime.datetime.strftime("%Y-%m-%d")
df['B'] = pd.to_datetime(df['B'], format = "%d/%m/%y").datetime.datetime.strftime("%Y-%m-%d")
df['C'] = (df['B'] - df['A']).dt.days
注意:使用 python 3.7
解决方案
Try:
df['A'] = pd.to_datetime(df['A'], dayfirst=True)
df['B'] = pd.to_datetime(df['B'], dayfirst=True)
df['C'] = (df['B'] - df['A']).dt.days
Output:
A B C
0 2018-04-05 2018-04-08 3
1 2015-05-24 2015-05-26 2
推荐阅读
- javascript - 如何使用 Vue.js 将已安装的复选框值持久保存到服务器/数据库
- javascript - 为什么分配一个返回空字符串的函数对象
- javascript - Javascript:根据对象内部的值从数组中删除对象
- c++ - 引用作为参数的模板参数推导
- sql-server - T-SQL XQuery 嵌套命名空间问题
- python - 如何使用 groupby - Python 推断缺失值?
- java - JAXB 将 XML 解组为抽象类型的错误子类
- delphi - 如何为指向记录的指针分配内存?德尔福 7
- http - Heroku:code=H18“服务器请求中断”,Java 服务器最少
- javascript - 有没有更好更快的方法用Javascript中的文本替换字符串中的数字?