当前位置: 首页 > news >正文

【Pandas】pandas Series dt

# Pandas2.2 Series

## Accessors

|方法|描述|

|-|:-------|

|Series.str|对 `Series` 中的字符串元素进行矢量化字符串操作|

|Series.cat|用于处理分类数据(Categorical Data)的属性|

|Series.dt|用于处理日期时间(datetime)数据的属性|

### pandas.Series.dt

`pandas.Series.dt` 是用于处理日期时间(datetime)数据的属性。它提供了一系列方法来操作和提取日期时间数据中的各个组件,如年、月、日、小时、分钟等。`pandas.Series.dt` 主要用于 `datetime64` 和 `timedelta64` 类型的 `Series`。

#### 常用方法

以下是一些常用的 `pandas.Series.dt` 方法及其示例:

1. **`year`**: 获取年份。

2. **`month`**: 获取月份。

3. **`day`**: 获取日期。

4. **`hour`**: 获取小时。

5. **`minute`**: 获取分钟。

6. **`second`**: 获取秒。

7. **`dayofweek`**: 获取星期几(0 表示周一,6 表示周日)。

8. **`day_name()`**: 获取星期几的名称。

9. **`quarter`**: 获取季度。

10. **`is_month_start`**: 检查是否是月份的开始。

11. **`is_month_end`**: 检查是否是月份的结束。

12. **`is_year_start`**: 检查是否是年的开始。

13. **`is_year_end`**: 检查是否是年的结束。

#### 示例

假设我们有一个包含日期时间数据的 `Series`:

```python

import pandas as pd

# 创建一个包含日期时间数据的 Series

dates = pd.Series(pd.date_range(start='2023-01-01', periods=6, freq='D'))

print(dates)

```

输出:

```

0   2023-01-01

1   2023-01-02

2   2023-01-03

3   2023-01-04

4   2023-01-05

5   2023-01-06

dtype: datetime64[ns]

```

##### 1. `year`

```python

# 获取年份

years = dates.dt.year

print(years)

```

输出:

```

0    2023

1    2023

2    2023

3    2023

4    2023

5    2023

dtype: int32

```

##### 2. `month`

```python

# 获取月份

months = dates.dt.month

print(months)

```

输出:

```

0    1

1    1

2    1

3    1

4    1

5    1

dtype: int32

```

##### 3. `day`

```python

# 获取日期

days = dates.dt.day

print(days)

```

输出:

```

0    1

1    2

2    3

3    4

4    5

5    6

dtype: int32

```

##### 4. `hour`

```python

# 获取小时

hours = dates.dt.hour

print(hours)

```

输出:

```

0    0

1    0

2    0

3    0

4    0

5    0

dtype: int32

```

##### 5. `minute`

```python

# 获取分钟

minutes = dates.dt.minute

print(minutes)

```

输出:

```

0    0

1    0

2    0

3    0

4    0

5    0

dtype: int32

```

##### 6. `second`

```python

# 获取秒

seconds = dates.dt.second

print(seconds)

```

输出:

```

0    0

1    0

2    0

3    0

4    0

5    0

dtype: int32

```

##### 7. `dayofweek`

```python

# 获取星期几(0 表示周一,6 表示周日)

dayofweek = dates.dt.dayofweek

print(dayofweek)

```

输出:

```

0    6

1    0

2    1

3    2

4    3

5    4

dtype: int32

```

##### 8. `day_name()`

```python

# 获取星期几的名称

day_name = dates.dt.day_name()

print(day_name)

```

输出:

```

0       Sunday

1       Monday

2      Tuesday

3    Wednesday

4     Thursday

5       Friday

dtype: object

```

##### 9. `quarter`

```python

# 获取季度

quarter = dates.dt.quarter

print(quarter)

```

输出:

```

0    1

1    1

2    1

3    1

4    1

5    1

dtype: int32

```

##### 10. `is_month_start`

```python

# 检查是否是月份的开始

is_month_start = dates.dt.is_month_start

print(is_month_start)

```

输出:

```

0     True

1    False

2    False

3    False

4    False

5    False

dtype: bool

```

##### 11. `is_month_end`

```python

# 检查是否是月份的结束

is_month_end = dates.dt.is_month_end

print(is_month_end)

```

输出:

```

0    False

1    False

2    False

3    False

4    False

5    False

dtype: bool

```

##### 12. `is_year_start`

```python

# 检查是否是年的开始

is_year_start = dates.dt.is_year_start

print(is_year_start)

```

输出:

```

0     True

1    False

2    False

3    False

4    False

5    False

dtype: bool

```

##### 13. `is_year_end`

```python

# 检查是否是年的结束

is_year_end = dates.dt.is_year_end

print(is_year_end)

```

输出:

```

0    False

1    False

2    False

3    False

4    False

5    False

dtype: bool

```

#### 总结

`pandas.Series.dt` 提供了一系列方法来操作和提取日期时间数据中的各个组件。通过这些方法,你可以轻松地对日期时间数据进行各种操作,如获取年份、月份、日期、小时等。希望这些示例能帮助你更好地理解和使用 `pandas.Series.dt`。

相关文章:

  • VBA技术资料MF279:点击任意工作表任意单元格显示其地址
  • Qt Graphics View
  • Vue3 + TS组件封装指南
  • 大模型面试高频考点-显存占用
  • QoS 技术详解:原理、应用与配置实践
  • Java中,`Thread`类的`sleep`方法使用整理
  • 日语学习-日语知识点小记-构建基础-JLPT-N4N5阶段(23):たら ても
  • 如果etc里的文件缺失,或者etc被删除了导致无法正常启动该怎么做?
  • python-leetcode 54.全排列
  • 详细解释javascript的GO对象和AO对象
  • pandas学习笔记(一)——基础知识和应用案例
  • PixelCLIP
  • 系统思考:恶性循环
  • 万字面试题助力春招(待补充)
  • Node.js中SerialPort(串口)模块使用详解
  • Spring 原生启动过程
  • 高数1.5 极限的运算法则
  • Tree of Thought Prompting(思维树提示)
  • Android的消息机制
  • 激光雷达“开卷”2.0,头部Tier1入局
  • 有关“普泽会”,俄官方表示:有可能
  • 哪条线路客流最大?哪个站点早高峰人最多?上海地铁一季度客流报告出炉
  • 浙江一家长称小学老师打孩子还威胁要从3楼扔下,当地警方已立案
  • 女排奥运冠军宋妮娜:青少年保持身心健康才能走得更远
  • 新闻1+1丨强对流天气频繁组团来袭,该如何更好应对?
  • 张国清将赴俄罗斯举行中俄“长江—伏尔加河”地方合作理事会第五次会议和“东北—远东”政府间合作委员会双方主席会晤