📅  最后修改于: 2023-12-03 15:04:08.314000             🧑  作者: Mango
在Python中,Resample和Interpolate是用于处理时间序列数据的重要函数。时间序列数据是一系列按照时间顺序排列的数据点,例如股票价格,温度记录等。
Resample可以将时间序列数据转换为不同的采样频率。例如,将每日的数据转换为每周的数据,或将每秒钟的数据转换为每分钟的数据。Resample的常用方法有:
以下为使用Resample将每日的温度数据转换为每周的平均温度数据的示例代码:
import pandas as pd
# 读取每日温度数据
df = pd.read_csv('daily_temperature.csv', index_col='date')
# 将每日数据转换为每周数据
df_weekly = df.resample('W').mean()
# 输出结果
print(df_weekly.head())
输出:
temperature
date
2016-01-03 2.857143
2016-01-10 6.000000
2016-01-17 7.000000
2016-01-24 8.142857
2016-01-31 10.857143
Interpolate可以根据已有数据进行线性插值,生成新的数据点。常用的插值方法有:
以下为使用Interpolate根据已有温度数据进行线性插值生成新的数据点的示例代码:
import pandas as pd
# 读取温度数据
df = pd.read_csv('temperature.csv')
# 进行线性插值
df_interpolated = df.interpolate(method='linear')
# 输出结果
print(df_interpolated.head())
输出:
date temperature
0 2016-01-01 3.0
1 2016-01-02 6.0
2 2016-01-03 9.0
3 2016-01-04 8.0
4 2016-01-05 7.0