通过日期字段提取年月日、timedelta提取时分秒并进行小时汇总 |
您所在的位置:网站首页 › 时间怎么只取年月日 › 通过日期字段提取年月日、timedelta提取时分秒并进行小时汇总 |
通过日期字段提取年月日、timedelta提取时分秒并进行小时汇总
1 业务需求2 根据时间字段提取年月日3 根据timedelta提取时分秒并进行小时汇总
手动反爬虫:
原博地址
知识梳理不易,请尊重劳动成果,文章仅发布在CSDN网站上,在其他网站看到该博文均属于未经作者授权的恶意爬取信息
如若转载,请标明出处,谢谢! 1 业务需求在进行数据分析,经常会遇到时间处理的问题,有时候需要从时间字段中直接提取年月日,在进行汇报工作的时候会被要求进行汇报时间和完成时间的差值计算,并统计出时分秒,于是面对真实的业务需求,就对这个问题进行梳理一下 ,梳理结果如下图 方法:就是将时间字段转化成为datetime数据,然后提取year、month、day,这里为了方便今后的业务需求,直接给出封装的函数,方便日后调用,有兴趣进一步了解的可以看一下前不久更新的项目实例:时间序列特征分析汇总(以2012-2019年槽罐车事故数据为例) def get_year_month_day(df,time_col): '''Extract the year, month, and day of the time field data''' df[time_col] = pd.to_datetime(df[time_col]) df['year'] = df[time_col].dt.year df['month'] = df[time_col].dt.month df['day'] = df[time_col].dt.day return df接下来看看如何使用,首先是导入pandas进行数据的读取,在进行时间处理时pandas的版本不同会对时间处理的结果会有不同,代码执行结果如下 还是真实的场景业务需要,要对报告时间和完成时间的差值进行数据提取,具体到天时分秒,最后还要加上一个总小时的汇总,下面就进行一步步梳理讲解 (1)首先构建完成时间的字段(完成日期+发生时间),并将报告时间和完成时间两个字段转化为datetime类型 由于完成时间的字段是有两个字段组成的,因此要现将其拼接成一个字段(如果不是同种数据类型不同列之间是不能直接相加,因此都转化为字符串),再转化为datetime类型,为了不破坏原数据,一般是命名为新字段,并由英文组成,方便后续操作,结果输出如下 上面英文命名就是为了接下来的快捷操作,jupyter notebook里面可以智能填充,直接输入完data.后按住tab就会出现自动补全的选项,指定刚刚命名的变量就可以了,这样要比第二种方式简洁,由于都是datetime数据类型,这样就可以直接加减,结果如下 还是和第一个封装的函数一样,传入data变量和相应的类型变量即可(这里就是timedelta类型变量),输出结果如下 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |