我们使用pandas读取到一个DataFrame的数据集之后,里面可能会有一些时间的列,有时候我们可能需要对这些时间进行处理,但是原始的时间序列有时候处理起来非常麻烦。
这个时候就可以用到pandas将原本的时间字符串转化为标准时间
下面记录一个简单的转化方法
数据:
我们先看一下这一列数据是什么类型的
结果是object类型的,这个时候我们就不能很方便的对这些时间进行操作了,所以我们用pandas的方法将它转化为标准时间
order['lock_time'] = pd.to_datetime(order['lock_time'])
然后再来看一下它的类型
ok,已经成功转化成我们需要的类型的,然后就可以对这些时间进行操作了。
获取它的年份:
获取月份:
还有days日期,等等,下面给出一个表格,
Timestamp类常用属性及说明
属性名称 | 说明 | 属性名称 | 说明 |
---|---|---|---|
year | 年 | week | 一年中第几周 |
month | 月 | quarter | 季节 |
day | 日 | weekofyear | 一年中第几周 |
hour | 小时 | dayofyear | 一年中的第几天 |
minute | 分钟 | dayofweek | 一周中第几天 |
second | 秒 | weekday | 一周第几天 |
date | 日期 | weekday_name | 星期名称(英文) |
time | 时间 | is_leap_year | 是否闰年 |
根据这些参数就可以获取到我们自己想要的时间,值得注意的是,这些时间还能进行运算,甚至能为负数哦,那这些就是属于数据清洗那一块的了
下面我自己写了个例子,将每一天的星期几输出,并将其改为中文的
这是修改前输出的星期几的数据:
然后下面我进行自己写一个函数来自定义,x代表传入的星期几的单个数据
def ch(x):
if x=='Monday':
return '星期一'
elif x=='Tuesday':
return '星期二'
elif x=='Wednesday':
return '星期三'
elif x=='Thursday':
return '星期四'
elif x=='Friday':
return '星期五'
elif x=='Saturday':
return '星期六'
elif x=='Sunday':
return '星期日'
else:
return '我不知道啊啊啊'
运行结果: