DataFrame对时间序列的操作

我们使用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 '我不知道啊啊啊'

运行结果:
在这里插入图片描述

发布了38 篇原创文章 · 获赞 3 · 访问量 3140

猜你喜欢

转载自blog.csdn.net/weixin_44941795/article/details/100862604