在 Python 中,您可以使用 pandas
库来处理时间序列数据,并根据 datetime
列进行采样。以下是一个示例,展示如何每隔 n
分钟立即采样一次数据。
首先,确保您已经安装了 pandas
库。如果没有安装,可以使用以下命令进行安装:
pip install pandas
接下来,您可以使用以下代码来创建一个示例 DataFrame,并每隔 n
分钟进行采样。
import pandas as pd
import numpy as np
# 创建一个示例 DataFrame
date_rng = pd.date_range(start='2023-01-01', end='2023-01-02', freq='T') # 每分钟一个时间点
data = np.random.randn(len(date_rng)) # 随机数据
df = pd.DataFrame(data, index=date_rng, columns=['value'])
# 打印原始数据
print("原始数据:")
print(df)
# 设置采样间隔(例如每隔 5 分钟)
n = 5 # 采样间隔(分钟)
# 进行采样
sampled_df = df.resample(f'{n}T').first() # 每隔 n 分钟取第一个值
# 打印采样后的数据
print(f"\n每隔 {n} 分钟采样的数据:")
print(sampled_df)
pd.date_range
创建一个从 2023-01-01
到 2023-01-02
的时间序列,频率为每分钟一个时间点。np.random.randn
生成与时间序列长度相同的随机数据。n
,在本例中为 5 分钟。resample
方法对 DataFrame 进行重采样,first()
方法用于获取每个时间段的第一个值。运行上述代码后,您将看到原始数据和每隔 n
分钟采样后的数据。输出将类似于以下内容:
原始数据:
value
2023-01-01 00:00:00 0.123456
2023-01-01 00:01:00 -0.654321
2023-01-01 00:02:00 0.987654
...
每隔 5 分钟采样的数据:
value
2023-01-01 00:00:00 0.123456
2023-01-01 00:05:00 0.456789
2023-01-01 00:10:00 -0.123456
...
n
。resample
方法支持多种聚合函数,如 mean()
, sum()
, last()
等,您可以根据需求选择合适的聚合函数。datetime
列是 pandas
的 DatetimeIndex
,以便能够使用 resample
方法。领取专属 10元无门槛券
手把手带您无忧上云