自学内容网 自学内容网

Python酷库之旅-第三方库Pandas(155)

目录

一、用法精讲

706、pandas.DatetimeTZDtype类

706-1、语法

706-2、参数

706-3、功能

706-4、返回值

706-5、说明

706-6、用法

706-6-1、数据准备

706-6-2、代码示例

706-6-3、结果输出

707、pandas.Timedelta.asm8属性

707-1、语法

707-2、参数

707-3、功能

707-4、返回值

707-5、说明

707-6、用法

707-6-1、数据准备

707-6-2、代码示例

707-6-3、结果输出

708、pandas.Timedelta.components属性

708-1、语法

708-2、参数

708-3、功能

708-4、返回值

708-5、说明

708-6、用法

708-6-1、数据准备

708-6-2、代码示例

708-6-3、结果输出

709、pandas.Timedelta.days属性

709-1、语法

709-2、参数

709-3、功能

709-4、返回值

709-5、说明

709-6、用法

709-6-1、数据准备

709-6-2、代码示例

709-6-3、结果输出

710、pandas.Timedelta.max属性

710-1、语法

710-2、参数

710-3、功能

710-4、返回值

710-5、说明

710-6、用法

710-6-1、数据准备

710-6-2、代码示例

710-6-3、结果输出

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

706、pandas.DatetimeTZDtype
706-1、语法
# 706、pandas.DatetimeTZDtype类
class pandas.DatetimeTZDtype(unit='ns', tz=None)
An ExtensionDtype for timezone-aware datetime data.

This is not an actual numpy dtype, but a duck type.

Parameters:
unit
str, default “ns”
The precision of the datetime data. Currently limited to "ns".

tz
str, int, or datetime.tzinfo
The timezone.

Raises:
ZoneInfoNotFoundError
When the requested timezone cannot be found.
706-2、参数

706-2-1、unit(可选,默认值为'ns')字符串,指定日期时间数据的单位,决定内部时间戳的精度,可以是以下值之一:

  • 'Y':
  • 'M':
  • 'D':
  • 'h': 小时
  • '​​​​​​​m': 分钟
  • '​​​​​​​s':
  • '​​​​​​​ms': 毫秒
  • '​​​​​​​us': 微秒
  • '​​​​​​​ns': 纳秒(默认值)

706-2-2、tz(可选,默认值为None)字符串或None,指定时区,决定如何解释和转换时间戳,以便在不同的时区间进行操作,可以是:

  • None: 表示没有时区(本地时间)。
  • 时区名称字符串,例如'Asia/Shanghai'。
  • pytz库中的时区对象。
706-3、功能

        允许用户创建和处理带有时区信息的日期时间数据,这在处理跨时区的数据时尤为重要,它确保日期时间数据的时区一致性,并提供时区转换的能力。

706-4、返回值

        返回一个表示带时区的日期时间类型的对象,该对象既可以用于pandas的数据结构(如Series和DataFrame),也可以与pandas的时间序列操作、聚合等功能很好地结合使用,从而使用户能够有效地处理时间数据。

706-5、说明

        无

706-6、用法
706-6-1、数据准备
706-6-2、代码示例
# 706、pandas.DatetimeTZDtype类
import pandas as pd
# 创建带时区的日期时间类型
dt_tz = pd.DatetimeTZDtype('ns', 'Asia/Shanghai')
# 使用在pandas中
series = pd.Series(pd.date_range('2024-10-16', periods=5, tz='Asia/Shanghai'), dtype=dt_tz)
print(series)
706-6-3、结果输出
# 706、pandas.DatetimeTZDtype类
# 0   2024-10-16 00:00:00+08:00
# 1   2024-10-17 00:00:00+08:00
# 2   2024-10-18 00:00:00+08:00
# 3   2024-10-19 00:00:00+08:00
# 4   2024-10-20 00:00:00+08:00
# dtype: datetime64[ns, Asia/Shanghai]
707、pandas.Timedelta.asm8属性
707-1、语法
# 707、pandas.Timedelta.asm8属性
pandas.Timedelta.asm8
Return a numpy timedelta64 array scalar view.

Provides access to the array scalar view (i.e. a combination of the value and the units) associated with the numpy.timedelta64().view(), including a 64-bit integer representation of the timedelta in nanoseconds (Python int compatible).

Returns:
numpy timedelta64 array scalar view
Array scalar view of the timedelta in nanoseconds.
707-2、参数

        无

707-3、功能

        用于将Timedelta对象转换为NumPy的timedelta64数据类型,具体以64位整数表示时间差,在NumPy中,时间差以纳秒为单位表示。

707-4、返回值

        返回的是一个NumPy timedelta64类型的值,表示时间差的微秒数。具体来说,asm8将Timedelta对象转换为NumPy的原生时间差类型,可以用于更高效的计算和存储。

707-5、说明

        无

707-6、用法
707-6-1、数据准备
707-6-2、代码示例
# 707、pandas.Timedelta.asm8属性
import pandas as pd
# 创建一个Timedelta对象
td = pd.Timedelta(days=1, hours=5, minutes=30)
# 转换为NumPy的timedelta64
numpy_td = td.asm8
print(numpy_td)
707-6-3、结果输出
# 707、pandas.Timedelta.asm8属性
# 106200000000000 nanoseconds
708、pandas.Timedelta.components属性
708-1、语法
# 708、pandas.Timedelta.components属性
pandas.Timedelta.components
Return a components namedtuple-like.
708-2、参数

        无

708-3、功能

        用于获取一个Timedelta对象的组成部分,包括天数、小时、分钟、秒和微秒,这些组成部分以一个数据框的形式返回,方便用户进行进一步的操作和分析。

708-4、返回值

        返回值是一个命名元组,包含以下字段:

  • days: 天数
  • seconds: 秒数
  • microseconds: 微秒数
  • milliseconds: 毫秒数
  • minutes: 分钟数
  • hours: 小时数
  • weeks: 周数
708-5、说明

        无

708-6、用法
708-6-1、数据准备
708-6-2、代码示例
# 708、pandas.Timedelta.components属性
import pandas as pd
# 创建一个Timedelta对象
td = pd.Timedelta(days=2, hours=5, minutes=30)
# 获取组成部分
components = td.components
print(components)
708-6-3、结果输出
# 708、pandas.Timedelta.components属性
# Components(days=2, hours=5, minutes=30, seconds=0, milliseconds=0, microseconds=0, nanoseconds=0)
709、pandas.Timedelta.days属性
709-1、语法
# 709、pandas.Timedelta.days属性
pandas.Timedelta.days
Returns the days of the timedelta.

Returns:
int
709-2、参数

        无

709-3、功能

        用于获取一个Timedelta对象中所包含的天数,Timedelta是pandas中的一个用于表示时间差的对象。

709-4、返回值

        返回值是一个整数,表示Timedelta对象中完整的天数部分。具体来说,返回值会是:

  • 正数:表示时间差中的完整天数(例如,5天)。
  • 0:如果时间差少于一天(例如,12小时)。
  • 负数:如果时间差为负值(例如,-3天)。
709-5、说明

        无

709-6、用法
709-6-1、数据准备
709-6-2、代码示例
# 709、pandas.Timedelta.days属性
import pandas as pd
# 创建一个Timedelta对象
time_diff = pd.Timedelta(days=5, hours=12)
# 获取包含的天数
days = time_diff.days
print("天数:", days)
709-6-3、结果输出
# 709、pandas.Timedelta.days属性
# 天数: 5
710、pandas.Timedelta.max属性
710-1、语法
# 710、pandas.Timedelta.max属性
pandas.Timedelta.max
pandas.Timedelta.max = Timedelta('106751 days 23:47:16.854775807')
710-2、参数

        无

710-3、功能

        用于获取Pandas中Timedelta类型的最大可能时间间隔,Timedelta表示时间间隔,可以用于表示两个时间点之间的差。

710-4、返回值

        返回的是一个表示最大的时间间隔(时间差)的Timedelta对象。具体来说,它的值是Timedelta(days=Going to: 3.15576e+14),相当于大约3.15576 × 10^14微妙,约等于3.15576 × 10^5 年,这是pandas中可以表示的最长时间差。

710-5、说明

        无

710-6、用法
710-6-1、数据准备
710-6-2、代码示例
# 710、pandas.Timedelta.max属性
import pandas as pd
# 获取Pandas中的最大时间增量
max_timedelta = pd.Timedelta.max
# 打印最大时间增量
print("最大时间增量:", max_timedelta)
710-6-3、结果输出
# 710、pandas.Timedelta.max属性
# 最大时间增量: 106751 days 23:47:16.854775807

二、推荐阅读

1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页

原文地址:https://blog.csdn.net/ygb_1024/article/details/142965467

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!