Есть ли какая-либо команда, чтобы найти среднее из первых 5 значений, а затем следующих 5 значений из 25 значений, присутствующих в векторе в MATLAB. Если набор данных X. Если кто-нибудь может помочь мне предоставить код, где я могу получить среднее значение для каждого 5-го значения.
X=[4 5 6 7 2 5 7 4 2 6 7 3 2 1 5 7 8 3 4 6 8 4 2 6 8];
Например, вы можете изменить вектор в массиве с помощью reshape, а затем применить функцию mean:
reshape
mean
M = mean(reshape(X, [5, numel(X)/5]),1);
или просто
M = mean(reshape(X, 5, []),1);
Но там, как указанов комментариях есть много других способов.
Вот один простой способ сделать это.Переставьте вектор в матричный цикл по столбцам и возьмите среднее значение всех значений в каждом столбце.Сохраните результаты в новом векторе.
X=[4 5 6 7 2 5 7 4 2 6 7 3 2 1 5 7 8 3 4 6 8 4 2 6 8]; Xr = reshape(X,5,5) cols = size(Xr)(2) avgs=zeros(1,cols) for i= 1:cols avgs(i) = mean(Xr(:,i)) end