【发布时间】:2018-04-28 15:55:03
【问题描述】:
我有两个数据集,分别是速度和方向数据,以不同的时间步长记录。
一个数据集 (A) 每 10 分钟记录一次,另一个 (B) 每小时记录一次。
开始时间并不完全相同。
A(速度和方向数据)每 10 分钟采样一次,例如00.00, 00.10, 00.20, ...B(方向数据)每小时采样一次,例如23.54, 00.54, 01.54, ...
我想基于数据集A 创建一个新版本的数据集B,其中包含方向数据(一种合成数据集),我从数据集@987654327 中每10 分钟填写一次记录@并保留数据集B每小时的原始记录。
示例数据:
% columns: timestamp, direction, speed
A = [732381.006944445 22.70 2.23
732381.013888889 18.20 3.41
732381.020833333 31.00 6.97
732381.027777778 36.90 5.63];
% columns: timestamp, direction
B = [732381.038078704 3.01
732381.079745370 5.63
732381.121412037 0.68
732381.163078704 359.56];
..我想要这样的东西..
% columns: timestamp, direction
B_new = [732381.038078704 'some value based on value in A at that time'
732381.079745370 'some value based on value in A at that time'
732381.121412037 'some value based on value in A at that time'
732381.163078704 'some value based on value in A at that time'];
所以B_new 矩阵中的第一列是 10 分钟的时间戳,而不是一小时的原始时间戳。 IE。我们创建一个新的时间序列(B_new),采样时间为 10 分钟。所以像你这样的东西已经展示了@Wolfie,但时间步长为矩阵A。
将B 中的方向数据分配为A 中最近可用时间的方向数据,同时仍保持与新矩阵B 中的A 相同的数据采样的最佳方法是什么?
【问题讨论】:
标签: matlab time-series sampling