在Python中插值周期性数据
我有一个模块,它收集的数据时间间隔不一致。可惜的是,为了在图表中好看地使用这些数据,我需要把 x 的值调整到一个一致的时间间隔。
给定以下的 x 和 y 的配对,最符合Python风格的做法是什么呢?
(1, 23), (2, 42), (3.5, 89), (5, 73), (7, 54), (8, 41), (8.5, 37), (9, 23)
相关问题:
1 个回答
7
使用 numpy.interp:
import numpy as np
a = np.array([(1, 23), (2, 42), (3.5, 89), (5, 73), (7, 54), (8, 41), (8.5, 37), (9, 23)])
x = np.arange(1, 10) # target x values
b = zip(x, np.interp(x, a[:,0], a[:,1]))
# b == [(1, 23.0),
# (2, 42.0),
# (3, 73.333333333333329),
# (4, 83.666666666666671),
# (5, 73.0),
# (6, 63.5),
# (7, 54.0),
# (8, 41.0),
# (9, 23.0)]