Single function like stepinfo but for general stats?
Afficher commentaires plus anciens
I really like how stepinfo gives me the characteristics of my data in a single line. Is there a similar function that will give me general statistics? I am looking to get:
Max
Min
Mean
Median
Mode
StDev
peaks reached and peak time
Réponses (1)
Brendan Hamm
le 12 Mar 2015
Yes. There is a function named grpstats in the Statistics Toolbox which allows you to get multiple statistics. This function will compute these statistics for different grouping variables, but you can use it just the same if all of your variables belong to the same group.
Example:
x = rand(100,1);
[meanX, stdX] = grpstats(x,[],{'mean','std'})
The brackets represent where you would normally pass the grouping variable, but we can omit this input in the manner I show.
4 commentaires
matlabuser12
le 12 Mar 2015
Brendan Hamm
le 12 Mar 2015
Since data has 5 columns and the statistics functions are calculated on a column basis, so you are getting back a 5 element vector of the means. To get back each statistic you need to assign an output variable for each statistic.
[stat.means, stat.stds, stat.mins, stat.maxs, stat.numels, stat.vars] = ...
grpstats(data,[],{'mean','std','min','max','numel', 'var'})
We have no need for the for loop as we are calculating this seperately for each column anyhow. The function returns a separate vector for each stat, so we cannot explicitly assign all of the output to one variable.
matlabuser12
le 12 Mar 2015
Modifié(e) : matlabuser12
le 12 Mar 2015
Brendan Hamm
le 13 Mar 2015
Yes, you will just want to make sure that on each call to grpstats you use data(:,i) so that you get the scalar value of mean, std, etc.
Catégories
En savoir plus sur Repeated Measures and MANOVA dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!