关键词

Pandas时间序列基础详解(转换,索引,切片)

Pandas时间序列基础详解(转换,索引,切片)

时间序列简介

时间序列是一种以时间为索引的数据类型,是数据科学中常见的重要类型之一。在处理时间序列数据时,Pandas是非常有用的工具。

Pandas时间序列的两种数据类型

Pandas中有两种数据类型代表了时间序列:

  • Timestamp:表示某个具体的时间点。
  • Period:表示某个时间段。

转换时间序列数据

Pandas提供了许多函数来将不同的时间序列数据类型相互转换。这些函数包括:

  • pandas.to_datetime():将字符串转换为Pandas的Timestamp类型。

```
import pandas as pd
import numpy as np

s = pd.Series(['20160101', '20160102', '20160103'])
s_datetime = pd.to_datetime(s)
print(s_datetime)
```

输出结果为:

0 2016-01-01
1 2016-01-02
2 2016-01-03
dtype: datetime64[ns]

  • pandas.date_range():提供了一种快速生成时间序列的方法。

```
import pandas as pd

s = pd.date_range(start='2021-01-01', end='2021-01-03', freq='D')
print(s)
```

输出结果为:

DatetimeIndex(['2021-01-01', '2021-01-02', '2021-01-03'], dtype='datetime64[ns]', freq='D')

索引时间序列数据

Pandas允许按照时间进行索引。只需要将时间戳或时间段传递给索引函数即可。

import pandas as pd

s = pd.DataFrame({'price': [10, 20, 30]}, index=pd.to_datetime(['2021-01-01', '2021-01-02', '2021-01-03']))
print(s.loc['2021-01-02'])

输出结果为:

price    20
Name: 2021-01-02 00:00:00, dtype: int64

切片时间序列数据

Pandas提供了多种切片时间序列数据的方法。

  • 按照年份切片

```
import pandas as pd

s = pd.DataFrame({'price': [10, 20, 30, 40]}, index=pd.to_datetime(['2021-01-01', '2021-02-01', '2022-01-01', '2022-02-01']))
print(s.loc['2021'])
```

输出结果为:

price
2021-01-01 10
2021-02-01 20

  • 按照年份和月份切片

```
import pandas as pd

s = pd.DataFrame({'price': [10, 20, 30, 40]}, index=pd.to_datetime(['2021-01-01', '2021-02-01', '2022-01-01', '2022-02-01']))
print(s.loc['2021-02'])
```

输出结果为:

price
2021-02-01 20

以上是Pandas时间序列基础详解的相关内容,希望对您有所帮助。

本文链接:http://task.lmcjl.com/news/17431.html

展开阅读全文