You'll probably want to use either interp1() or imresize(). Both are illustrated in the demo below:
clc; clearvars; y2 = rand(1, 9385); y5 = rand(1, 37508);
% The easiest method, using imresize(). % Make y2 the same size as y5 y2Larger = imresize(y2, size(y5)); % Now sum them output = y2Larger + y5;
% Alternative method using interp1 x = linspace(1, length(y5), length(y2)); xi = 1:length(y5); y2Larger = interp1(x, y2, xi) % Now sum them output = y2Larger + y5;
It works for any input matrix (X) with number of elements (m x n). The output is Y with m-rows by n-columns. The size of X and Y must be the same.