Matlab:可扩展数组,丢失数据



我有两列数据。第一列是时间,第二列是时间的函数。然而,一些时间值丢失了,所以函数值。我不知道丢失的行索引(数据量太大)。例如:

 t   x+w
2t  2x+w
3t  3x+w
6t  6x+w
7t  7x+w

但是,它应该像:

 t   x+w
2t  2x+w
3t  3x+w
4t  4x
5t  5x
6t  6x+w
7t  7x+w

我想扩展时间数组并添加相应的函数值。实际上f(t)是随机的,但具有线性增长的确定性行为。因此,如果我在数千个值中添加两个值,则无关紧要。在Matlab中怎么做呢?

对不起我的英语。我希望我能解释清楚。谢谢。

如果您的数据看起来像这样:

t = [1 2 3 6 7];
x = 2;
w = 10;
X = t*x + w;

现在你可以插入来获得缺失的X值:

ti = 1:7;
Xi = interp1(t, X, ti);

或者如果你说你有这个:

t = [1 2 3 6 7];
X = rand(size(t));

然后填充随机值:

Xi(t) = X; %Space out the origianl random value according to t
Xi(setdiff(1:7,t)) = rand() %Find the missing vlaues using setdiff and replace them with new random values
ti = 1:7;

相关内容

  • 没有找到相关文章

最新更新