超级简单!字符串转datetime类型

前言:我们在进行数据清洗得时候,尤其是针对跟时间类型挂钩得数据得时候,总会想让他变成datetime类型方便我们得应用,但是数据又是字符串类型,在此我分享两种方法给大家!

第一种:
  • 直接利用pd.todatetime
import pandas as pd
# 先创建一个dataframe例子 里面1.1 就是1月1号 
df2= pd.DataFrame({'a':['1.1','1.2','1.3'],'b':['2.1','2.2','2.3']})
df2

  • Out:
    在这里插入图片描述
# format 及为格式化字符串 这个根据自己得数据进行选择
df2['date_formatted']=pd.to_datetime(df2['a'],format='%m.%d')
  • Out:
    在这里插入图片描述

这种方法适合年月日都有,个人认为,因为如果只有月和日,他会自动把年份添加上去并且是1900.

第二种

自定义函数进行船转换

# 需要time模块和datetime
import time,datetime
def str2time(date_str):
    fmt = '%m.%d' # 这一步根据你自己得字符串进行选择 格式化
    time_tuple = time.strptime(date_str, fmt)
    # 选择月 日 
    month, day = time_tuple[1:3]
    # 相比于之前得方法这种方法得优点在于可以指定年份
    a_date = datetime(2020,month, day)
    return a_date
  • Input:str2time('1.31')
  • Output:datetime.datetime(2020, 1, 31, 0, 0)
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值