问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何使用Python优雅地处理时间数据

发布网友 发布时间:2022-04-21 21:31

我来回答

5个回答

热心网友 时间:2023-04-30 00:27

python做数据分析时下面就是提取一个月数据的教程1. datetime库

1.1 ​​datetime.date​​
1) ​​datetime.date.today()​​ 返回今日,输出的类型为date类

import datetime
today = datetime.date.today()
print(today)
print(type(today))
–> 输出的结果为:

2020-03-04
<class 'datetime.date'>
将输出的结果转化为常见数据类型(字符串)

print(str(today))
print(type(str(today)))
date = str(today).split('-')
year,month,day = date[0],date[1],date[2]
print('今日的年份是{}年,月份是{}月,日子是{}号'.format(year,month,day))
–> 输出的结果为:(转化为字符串之后就可以直接进行操作)

2020-03-04
<class 'str'>
今日的年份是2020年,月份是03月,日子是04号
2) ​​datetime.date(年,月,日)​​,获取当前的日期

date = datetime.date(2020,2,29)
print(date)
print(type(date))
–> 输出的结果为:

2020-02-29
<class 'datetime.date'>
1.2 ​​datetime.datetime​​
1) ​​datetime.datetime.now()​​输出当前时间,datetime类

now = datetime.datetime.now()
print(now)
print(type(now))
–> 输出的结果为:(注意秒后面有个不确定尾数)

2020-03-04 09:02:28.280783
<class 'datetime.datetime'>
可通过​​str()​​转化为字符串(和上面类似)

print(str(now))
print(type(str(now)))
–> 输出的结果为:(这里也可以跟上面的处理类似分别获得相应的数据,但是也可以使用下面更直接的方法来获取)

2020-03-04 09:04:32.271075
<class 'str'>
2) 通过自带的方法获取年月日,时分秒(这里返回的是​​int​​整型数据,注意区别)

now = datetime.datetime.now()
print(now.year,type(now.year))
print(now.month,type(now.month))
print(now.day,type(now.day))
print(now.hour,type(now.hour))
print(now.minute,type(now.minute))
print(now.second,type(now.second))
print(now.date(),type(now.date()))
print(now.date().year,type(now.date().year))
–> 输出的结果为:(首先注意输出中倒数第二个还是上面的​​datetime.date​​​对象,这里是用来做时间对比的,同时除了这里的​​datetime.datetime​​​有这种方法,​​datetime.date​​​对象也有。因为此方法获取​​second​​是取的整型数据,自然最后的不确定尾数就被取整处理掉了)

2020 <class 'int'>
3 <class 'int'>
4 <class 'int'>
9 <class 'int'>
12 <class 'int'>
55 <class 'int'>
2020-03-04 <class 'datetime.date'>
2020 <class 'int'>

热心网友 时间:2023-04-30 00:27

Pandas中,最基本的时间序列类型就是以时间戳为索引的Series对象。

时间戳使用Timestamp(Series派生的子类)对象表示,该对象与datetime具有高度的兼容性,可以直接通过to_datetime()函数将datetime转换为TimeStamp对象。

import pandas as pd # 导入pandas模块,并起个别名pd from datetime import datetime import numpy as np pd.to_datetime('20200828') # 将datetime转换为Timestamp对象
Timestamp('2020-08-28 00:00:00')
当传入的是多个datetime组成的列表,则Pandas会将其强制转换为DatetimeIndex类对象。

# 传入多个datetime字符串 date_index = pd.to_datetime(['20200820', '20200828', '20200908']) date_index
DatetimeIndex(['2020-08-20', '2020-08-28', '2020-09-08'],
dtype='datetime64[ns]', freq=None)
如何取出第一个时间戳

date_index[0] # 取出第一个时间戳
Timestamp('2020-08-20 00:00:00')
2.在Pandas中,最基本的时间序列类型就是以时间戳为索引的Series对象。

# 创建时间序列类型的Series对象 date_ser = pd.Series([11, 22, 33], index=date_index) date_ser
2020-08-20 11
2020-08-28 22
2020-09-08 33
dtype: int64
也可将包含多个datetime对象的列表传给index参数,同样能创建具有时间戳索引的Series对象。

# 指定索引为多个datetime的列表 date_list = [datetime(2020, 1, 1), datetime(2020, 1, 15), datetime(2020, 2, 20), datetime(2020, 4, 1), datetime(2020,

热心网友 时间:2023-04-30 00:28

做数据分析时,对于有时间数据的数据来源,在时间维度上的剖析必不可少

比如:

在一天的销售时间内,哪些时间段是高峰

是否与星期有关

RFM模型中的R怎么快速计算距离天数

如何找出某个时间点或时间段的数据

以某订单数据为例

查看时间列,包括日期和时间,从19年到20年,共约4万条数据,

注意类型是datetime

如果类型不是

datetime,则后续无法处理时间数据!

如下新建一列类型不是datetime的时间数据,在提取年份时会出错

如果时间数据不是默认类型时,需要进行类型转换

提取年月日、时分秒、第几周,闰年等

提取星期,其中0表示周一

热心网友 时间:2023-04-30 00:28

Python数据分析时间序列按照日期先后顺序,依次提取一个月的数据就行了。这样就会得到完整的数据结果和分析。

热心网友 时间:2023-04-30 00:29

python数据分析(15)】Pandas中时间序列处理(1)datetime中年月日数据的提取、时间数据运算以及日期字符串格式标准化转换
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
粒上皇开口熟栗120g*5袋(共600g)-详细介绍 三皇王板栗介绍 品牌榜:2024年板栗十大品牌排行榜 投票结果公布【新】 为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 logo是什么? 如何使用Python优雅地处理时间数据 关于LOGO语言 如何去掉Python数据框中日期后面的时间 如何去掉Python数据框中日期后面的时间 什么是 logo ? python如何创建日期命名文件? python如何创建日期命名文件? logo语言 Python 如何将表格中所有日期形式(如31-Jan-94)... Python 如何将表格中所有日期形式(如31-Jan-94)... python3.5 中这些数据格式区别? logo是什么意思?他的英文读音是什么? python 读取execl的时候 日期格式读出来的是一串数... python 读取execl的时候 日期格式读出来的是一串数... logo的常用图形画法 logo的语言有哪些?要加意思 用python编写程序。问题如下:有两列数据,一列是... 用python编写程序。问题如下:有两列数据,一列是... 什么叫做LOGO?它有多重意思吗? python创建根据时间的txt文件 python创建根据时间的txt文件 LOGO是什么 LOGO 什么意思 是缩写吗? 怎么折纸飞机可以飞的又远又高 飞机怎么折飞的远又飞的高 怎样才能叠飞机飞的更高更远 怎样折的纸飞机飞得更远更高简单又好玩 怎么折出飞得又高又远的纸飞机? 飞机的折法怎么折,要飞的高的飞机 怎样折的纸飞机,飞得又高又远 tbc报复卡牌哪里掉得多 怎么折飞机才会飞的高和远? 有没有推送招投标信息的? 怎么叠飞机才能飞得又高又远 如何查询招投标信息? tbc复仇卡牌覆盖率 安微招投标信息网宿州市城管局广场三角洲外围道路... tbc 复仇之刃哪里获得 如何让折纸飞机飞得更高更远