如何计算matlab中的均值,最小值和最大值

时间:2016-05-18 14:41:18

标签: matlab max weka min mean

所以我有一个脚本来计算加速器数据的平均值:

clear all
close all
clc

load 'results.txt'
Fq=51.2;
N=length(results);

t= [1:N]/Fq;

plot (t,results);

role=results;
lowrow=role(1:9244,:);
fly=role(9245:18700,:);
pull=role(18802:28171,:);

subplot(3,1,1)
plot(lowrow)
xlabel('Samples'); ylabel('Acceleration'); title('High to Low Rows')
subplot(3,1,2)
plot(fly)
xlabel('Samples'); ylabel('Acceleration'); title('Reverse Fly')
subplot(3,1,3)
plot(pull)
xlabel('Samples'); ylabel('Acceleration'); title('Lawn Mower Pull')

windowLength = 5; %Length for each window in seconds
startPos = 1; %Starting Position for 1st win
endPos = startPos + (windowLength * floor(Fq)); %End Position for 1st win
totalWindows = floor(length(lowrow)/Fq/windowLength);

stats = zeros(windowLength,9);

for i = 1:totalWindows
epMean = mean(lowrow(startPos:endPos,:)); %calculate window mean

%X, Y & Z axis values for each stat
lowrowfeatures(i,1:3) = epMean; 

%Next window position
startPos = endPos+1;
endPos = startPos + (windowLength * floor(Fq));
end
windowLength = 5; %Length for each window in seconds
startPos = 1; %Starting Position for 1st win
endPos = startPos + (windowLength * floor(Fq)); %End Position for 1st win
totalWindows = floor(length(fly)/Fq/windowLength);

stats = zeros(windowLength,9);

for i = 1:totalWindows
epMean = mean(fly(startPos:endPos,:)); %calculate window mean

%X, Y & Z axis values for each stat
flyfeatures(i,1:3) = epMean; 

%Next window position
startPos = endPos+1;
endPos = startPos + (windowLength * floor(Fq));
end
windowLength = 5; %Length for each window in seconds
startPos = 1; %Starting Position for 1st win
endPos = startPos + (windowLength * floor(Fq)); %End Position for 1st win
totalWindows = floor(length(pull)/Fq/windowLength);

stats = zeros(windowLength,9);

for i = 1:totalWindows
epMean = mean(pull(startPos:endPos,:)); %calculate window mean

%X, Y & Z axis values for each stat
pullfeatures(i,1:3) = epMean; 

%Next window position
startPos = endPos+1;
endPos = startPos + (windowLength * floor(Fq));
end


save('wekafile.txt','lowrowfeatures','flyfeatures','pullfeatures','-ascii')

我知道平均值,最小值和最大值都应该在一个脚本上我只是不确定如何执行此操作。然后我将它作为一个arff文件放入weka中,以查看j48树。

亲切的问候:)

1 个答案:

答案 0 :(得分:2)

我不确定我是否理解这个问题,但是MATLAB有一个用于计算minmax的内置函数,就像mean一样。使用;

minimum = min(variable);
maximum = max(variable);