📅  最后修改于: 2023-12-03 14:55:09.756000             🧑  作者: Mango
在Python中,熊猫(Pandas)库是非常流行的用于数据处理和分析的库。时间索引是熊猫库中最常用的功能之一,它允许我们按照时间排序和过滤数据。在本文中,我们将介绍如何使用熊猫库中的时间索引,包括创建时间索引,按照时间排序和筛选数据。
我们可以使用 pd.to_datetime()
函数将字符串格式的时间数据转换为时间索引,如下所示:
import pandas as pd
dates = ['2021-01-01', '2021-01-02', '2021-01-03']
data = [1, 2, 3]
df = pd.DataFrame({'date': dates, 'data': data})
df['date'] = pd.to_datetime(df['date'])
df = df.set_index('date')
print(df)
输出结果为:
data
date
2021-01-01 1
2021-01-02 2
2021-01-03 3
我们可以看到,时间索引已经被创建并设置为数据框的索引。
一旦我们创建了时间索引,就可以按照时间进行排序。我们可以使用 sort_index()
函数将数据框按照时间索引排序,如下所示:
df = df.sort_index()
print(df)
输出结果为:
data
date
2021-01-01 1
2021-01-02 2
2021-01-03 3
我们可以看到,数据框已经按照时间索引排序。
使用时间索引可以方便地筛选时间范围内的数据。例如,我们可以使用 loc[]
函数选择特定时间范围内的数据,如下所示:
df = df.loc['2021-01-01':'2021-01-02']
print(df)
输出结果为:
data
date
2021-01-01 1
2021-01-02 2
我们可以看到,只有时间范围内的数据被选中了。
除了使用 loc[]
函数,我们还可以使用 resample()
函数对时间序列进行聚合,如下所示:
import numpy as np
df = pd.DataFrame({'date': pd.date_range('2021-01-01', periods=6),
'data': np.random.randn(6)})
df = df.set_index('date')
df = df.resample('D').sum()
print(df)
输出结果为:
data
date
2021-01-01 -0.107768
2021-01-02 -1.873299
2021-01-03 0.612014
2021-01-04 1.491845
2021-01-05 -0.388988
2021-01-06 -0.574979
我们可以看到,数据被按照天的形式聚合了起来。
在本文中,我们介绍了如何使用熊猫库中的时间索引。我们学习了如何创建时间索引,按照时间排序和筛选数据。这些功能使我们可以更方便地处理和分析时间序列数据。