網站首頁 編程語言 正文
前言
一般從數據庫或者是從日志文件讀出的數據均帶有時間序列,做時序數據處理或者實時分析都需要對其時間序列進行歸類歸檔。而Pandas是處理這些數據很好用的工具包。此篇博客基于Jupyter之上進行演示,本篇博客的愿景是希望我或者讀者通過閱讀這篇博客能夠學會方法并能實際運用。希望讀者看完能夠提出問題或者看法,博主會長期維護博客做及時更新。純分享,希望大家喜歡。
一、獲取時間
python自帶datetime庫,通過調用此庫可以獲取本地時間
from datetime import datetime
datetime.now()
?同時也可以獨立獲取年月日:
datetime.now().day
datetime.now().year
datetime.now().moth
?isoweekday()獲取符合ISO標準的指定日期所在的星期數:
datetime.now().isoweekday()
為星期二。
但也有weekeday()方法但是是從0開始,也就是說0也就是周一,需要加一轉為周數:
datetime.now().weekday()+1
?datetime可以將日期(date)和時間(time)分隔開:
datetime.now().date()
datetime.now().time()
也可以用timetuple()函數將整個時間拆分為結構體:
datetime.now().timetuple()
?要轉換為自定義熟悉的時間表達可以使用strftime()函數,其輸出代碼格式有以下幾種:
datetime.now().strftime('%Y-%m-%d')
datetime.now().strftime('%m/%d/%Y %H:%M:%S')
二、時間索引
時間索引是根據數據的時間來處理時序數據進行歸檔篩選的一種索引方式。
展示數據:
首先查看類型是否為 datetime類型,是該類型再重新設定索引,否則需要先把索引時間列轉換為datetime類型再進行設定。
df1.set_index('first_order_time')
?若要查找2019年的數據,只需要在 后面加上日期即可:
df1['2019']
想要獲取詳細的日期的數據只需要在[]里面輸入對應的日期即可:
df1['2019-05-13']
獲取區間日期數據:
df1['2019-05-01':'2019-05-13']
三、時間推移
?如果時序數據提取出來時間并不符合對應時間戳,則可以使用timedelta進行推移時間:
timedelta類表示為時間差,可直接實例化也可以由兩個datetime進行相減操作得到。
可表示的時間差依次為:
days,seconds,microseconds,minutes,hours,weeks
?如我們要推移一天時間:
date = datetime(2019,5,10)
date+timedelta(days = 1)
?往后推移只需要減去對應天數就好了。
比起timedelta,有date offset可以直接進行時間推移,并不需要換算,效率比timedelta要快很多。
引入庫:
from pandas.tseries.offsets import Day,Hour,Minute
date+Day(1)
計算結果為timestamp:?
原文鏈接:https://blog.csdn.net/master_hunter/article/details/124785079
相關推薦
- 2023-01-31 C#實現批量壓縮和解壓縮的示例代碼_C#教程
- 2024-03-14 SpringBoot中RestTemplate 發送http請求
- 2022-03-17 淺析.netcore中的Configuration具體使用_實用技巧
- 2022-05-03 使用EF的Code?First模式操作數據庫_實用技巧
- 2022-12-22 postgresql13主從搭建Ubuntu_PostgreSQL
- 2022-03-10 搭建Redis服務器步驟詳細介紹_Redis
- 2023-04-19 Element UI Table常用使用方法(header-cell-style;表頭中的全選框取消
- 2022-04-22 Mac環境下使用CLion調試redis 6.X源碼
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支