Python中把字符串转日期怎么做,代码是什么
Admin 2022-07-09 群英技术资讯 1140 次浏览
今天这篇给大家分享的知识是“Python中把字符串转日期怎么做,代码是什么”,小编觉得挺不错的,对大家学习或是工作可能会有所帮助,对此分享发大家做个参考,希望这篇“Python中把字符串转日期怎么做,代码是什么”文章能帮助大家解决问题。import pandas as pd pd.date_range( )
同生成随机数的思想类似,使用pandas库中的函数
pd.date_range(start=None,end=None,periods=None,freq=None,tz=None,normalize=False,name=None,close=None,**kwargs)
start_date='20200101' length=10 date_1=pd.date_range(start=start_date,periods=10).tolist() #默认freq为D,每天 date_1

也可以设置频率freq=‘M'
date_1=pd.date_range(start=start_date,periods=10,freq='M')

start_date='20200101' end_date='20200110' date_2=pd.date_range(start=start_date,end=end_date,freq='D') #默认为D date_2

频率freq的设置有:
D --- Day --- 每日 B --- BusinessDay --- 每工作日 H --- Hour --- 每小时 T/min --- Minute ---每分钟 S --- Second --- 每秒 M --- MonthEnd --- 每月最后一个日历日 Q --- Quater --- 每季度
注意上面生成的日期数据,就是list格式,在构建数据框时可以直接用。
pd.DataFrame({'Time':date_1})

导入数据时常会出现,日期型数据导入后,变成字符串格式,在后续使用时,需要转化为日期。
构造一个时间数据
date_list1=pd.date_range(start=start_date,periods=gap).strftime('%Y%m%d').tolist()
num1=np.random.randint(1,101,100) #生成1-101的随机整数
num2=np.random.randint(100,201,100)
df_temp=pd.DataFrame({'Time':date_list1,
'Number1':num1,
'Number2':num2})
df_temp.head()

上面数据构造时,为了方便之后举例子,将生成的时间数据转化为字符串后,构造的数据框。
print(df_temp['Time'].dtype) print(pd.to_datetime(df_temp['Time']).dtype)
输出:
object
datetime64[ns]
pd.datetime这个函数可以直接作用在数据框的列上面,直接转换。
注意区分:
from datetime import datetime datetime.strftime() #由日期格式转化为字符串 datetime.strptime() #由字符串格式转化为日期
例子:
print(datetime.strptime('20200101','%Y%m%d'))
print(datetime.strptime('2020-01-01','%Y-%m-%d'))
输出:
2020-01-01 00:00:00
2020-01-01 00:00:00
但是这个函数只能作用一个值,如果对数据框的列进行操作,需要首先定义一个函数:
from datetime import datetime
def date_ch(value):
return datetime.strptime(value,'%Y%m%d')
print(date_ch('20200812'))
df_temp['Time']=df_temp['Time'].apply(date_ch)
df_temp['Time']

pd.to_datetime('20200307').month
#year:日
#month:月
#week:周
#day:日
输出:
3
pd.to_datetime('20200101').strftime('%Y-%m')
输出:
‘2020-01'
数据如下:

def date_ch(value):
str_value=value.strftime('%Y-%m-%d')
month=str_value[5:7]
return month
df_temp['Time'].apply(date_ch)
#或者
#df_temp['Time'].apply(lambda x:date_ch(x))

strftime函数提取日期成分中,日期的标准化格式符号:
%a 星期的简写。如 星期三为Web %A 星期的全写。如 星期三为Wednesday %b 月份的简写。如4月份为Apr %B 月份的全写。如4月份为April %c: 日期时间的字符串表示。(如: 05/01/10 09:00:20) %d: 日在这个月中的天数 %f: 微秒(范围[0,999999]) %H: 小时(24小时制,[0, 23]) %I: 小时(12小时制,[0, 11]) %j: 日在年中的天数 [001,366] %m: 月份([01,12]) %M: 分钟([00,59]) %p: AM或者PM %S: 秒(范围为[00,61]) %U: 周在当年的周数当年的第几周),星期天作为周的第一天 %w: 今天在这周的天数,范围为[0, 6],6表示星期天 %W: 周在当年的周数,星期一作为周的第一天 %x: 日期字符串(如:05/01/20) %X: 时间字符串(如:09:00:20) %y: 2个数字表示的年份 %Y: 4个数字表示的年份 %z: 与utc时间的间隔 (如果是本地时间,返回空字符串) %Z: 时区名称(如果是本地时间,返回空字符串)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。
本篇文章给大家带来了关于Python的相关知识,主要为大家详细介绍了Python NumPy中数组的创建方式,文中的示例代码讲解详细,对我们学习Python有一定帮助,需要的可以参考一下。
在给计算机编程时,经常需要将数据告诉计算机,会将二进制数直接输入计算机, 但二进制数的特点是,只有0和1两种记数,位数比较长。如果用二进制数写程序,只要这个数比较大, 位数就会很长,很容易写错,同时二进制并不直观,写出来的数是否正确,需要转换才能知道。
这篇文章主要介绍了解决python subprocess参数shell=True踩到的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
这篇文章主要介绍了python中的opencv 图像分割与提取,图像中将前景对象作为目标图像分割或者提取出来。对背景本身并无兴趣分水岭算法及GrabCut算法对图像进行分割及提取。具体实现过程需要的朋友可以参考下面文章详细介绍
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008