我有一些数据是这样绘制的:
让我们谈谈一条曲线。
此曲线由2个离散数组表示,例如:
for x axis : timestemp = [0,112,445,778,1000]
for y axis : value = [12.7,22.4,77.6,22.7]
它们彼此对应,如时间戳0值= 12,7,时间戳为112,值为22.4
我希望我能得到一些曲线的连续表示,然后我可以通过时间戳平均地切割它们,比如0为12.7,100为18.7(我只是随机选择这个数字,因为22.4是时间112)
def window_slider(X,Y,x_step):
因此,当我采取:
X=[12.7,22.4,77.6,22.7]
Y = [0,112,445,778,1000]
x_step = 100
此函数将返回一个数据,其中包含我可以检索曲线的所有信息,与原始曲线完全相同,但同样可以切成10个。
感谢您的帮助..谢谢
###更多解释这个问题出现了我得到了离散数据并通过matplotlib以连续形式绘制(曲线)
然而,它自身的数据仍然是离散的,每个点由(x,y)表示。
现在我需要将它们剪切成特定的窗口,如果我将窗口长度设为5s,我希望我能得到一些数据来代表这个
答案 0 :(得分:0)
这应该有效
timestemp = [0,112,445,778,1000]
value = [12.7,22.4,77.6,22.7,33]
new_timestemp = [x for x in range(min(timestemp),max(timestemp)+1)]
steps = [ 1. * (value[t] - value[t-1]) / (timestemp[t] - timestemp[t-1]) for t in range(1,len(timestemp))]
new_value = [i+y for i in value for y in steps]
print new_value
答案 1 :(得分:0)
如果您对一些较高密度的数据进行采样,则可以增加采样以获得所需的数据粒度。
如果您没有从数据点获取任何数据,而不对数据的性质做出任何进一步的假设,则无法确定时间序列的值是什么。
你可以通过特定的点集来拥有无限数量的函数,并且只有当你假设所测量的信号值线性增加或减少时,你才能得到一些值。
如果您正在寻找时间序列之间的匹配,您可以使用许多众所周知的方法来解决这个问题,例如dynamic time warping。