Pandas中时间的处理方法

使用 pandas 中的 Timestamp 中的 floor() 处理时间

Pandas <strong>Timestamp.floor()</strong>将新的时间戳返回到此分辨率,将所需的时间序列频率作为输入。

ts = pd.Timestamp(year=2011, month=11, day=21, hour=10, second=49, tz='US/Central')
print(ts) --》 2011-11-21 10:00:49-06:00
print(ts.floor(freq='D')) --》   2011-11-21 00:00:00-06:00
print(ts.floor(freq="T")) --》   2011-11-21 10:00:00-06:00
print(ts.floor(freq="min")) --》 2011-11-21 10:00:00-06:00
print(ts.floor(freq="min")) --》 2011-11-21 10:01:00-06:00
print(ts.floor(freq="min")) --》 2011-11-21 10:01:00-06:00

freq=’D’:以天为频率,’T’:以分钟为频率,’min’:与 T 的效果一致

ceil() 和 round() 的用法类似,区别和math中的 ceil() 和 round() 类似

使用pandas处理时间,Timestamp(时间戳)是pandas继承自datetime.datetime的类。专门处理DataFrame中关于时间的类型。时间戳由date(日期)和time(时间组成);日期year,month和day组成;时间由hour、minute和second组成。

timedelta在pandas中表示时间间隔,也就是时间差,是两个时间之间差值,可以是几年,几个月或者几天,也可以是几小时之类的时间。因为是时间差,因此既可以是正数,也可以是负数。

时间数据的读取

  1. 时间戳格式:导入时使用excel已经设置好了是时间格式,pandas自动转Timestamp格式。
  2. 字符串格式:文本格式,或从txt文本导入,或从List列表转换。是str格式,可用pd.to_datetime()将字符串转为Timestamp格式了。

将字符串转化为时间戳格式,这是所有时间类处理的第一步;

时间戳属性:

Pandas中时间的处理方法

将时间戳转为需要格式的方法:

Pandas中时间的处理方法

时间间隔计算:继承datetime.timedelta类,计算结果返回的是一个timedelta类型。

Pandas中时间的处理方法

时间间隔的函数主要是对时间间隔计算,转换为标准格式,求总秒数等基础运算。

Pandas中时间的处理方法

上面都是对单个对象的处理,对pandas的整列数据(Series)处理,需要用 dt 属性借口。(提供了cat、dt、str 三种属性接口),dt 的属性跟之前的时间戳没有区别。

时间加减操作;主要是在加减时,要把int转为timedelta对象才能正常的计算结果;

&#x52A0;&#x4E00;&#x5929;&#x5E76;&#x53EA;&#x663E;&#x793A;&#x65E5;&#x671F;
data['&#x52A0;&#x4E00;&#x5929;'] = data['&#x65F6;&#x95F4;'].dt.date+pd.to_timedelta(1, unit='D')
&#x52A0;&#x4E00;&#x5C0F;&#x65F6;
data['&#x52A0;&#x4E00;&#x5C0F;&#x65F6;'] = data['&#x65F6;&#x95F4;']+pd.to_timedelta(1, unit='h')

Pandas 生成 TimeStamp 数据

pandas.to_datetime([‘20221001010000’]) -> 2022-10-01 01:00:00

pandas.to_datetime({‘year’: [2015] * num, ‘month’: [9] * num, ‘day’: [4, 5, 6], ‘hour’: [0, 1, 2]})

key值不能变,否则无法识别,value值数量要一致

参考:Python Pandas Timestamp.floor用法及代码示例 – 纯净天空

干货|python办公自动化(一)—数据处理之Pandas时间处理(一篇读懂时间) – 知乎

Original: https://blog.csdn.net/MarkAustralia/article/details/124558094
Author: Mark_Aussie
Title: Pandas中时间的处理方法

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/676996/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球