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时间序列基础详解的相关内容,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Pandas时间序列基础详解(转换,索引,切片) - Python技术站