在MATLAB中找到不同长度的时间向量之间的最接近值

时间:2015-05-12 14:50:13

标签: arrays matlab

我有2个向量,v1v2,包含日期和时间数据。向量具有不同的长度,length(v1)=15length(v2)=6。我想获得一个新的向量v3,其中包含v1v2之间最接近的值,因此我可以准确匹配v1和{{1}中的日期和时间}}。有谁知道如何实现这一目标?谢谢。

1 个答案:

答案 0 :(得分:2)

要找到v1中与v2的每个元素最接近的值:

v1 = [1 3 5 3 4];
v2 = [4 5 6];                                               % // example data
[~, ind] = min(abs(bsxfun(@minus, v1(:), v2(:).')), [], 1); %'// compute all differences
                                                            % // and find index of minimizer
result = v1(ind);                                           % // build result

在此示例中,

result =
     4     5     5