Effacer les filtres
Effacer les filtres

Standard deviation of multiple cell arrays

12 vues (au cours des 30 derniers jours)
Christoph Thorwartl
Christoph Thorwartl le 24 Juin 2021
Commenté : Star Strider le 24 Juin 2021
I've figured out how to get the average of multiple cell arrays. M is a 1x19 cell
MEAN = mean(cat(3,M{:}),3)
This works well. Now I want to apply the same for the standard deviation:
SD= std(cat(3,M{:}),3)
However, the following error occurs:
>> SD= std(cat(3,M{:}),3)
Error using var (line 197)
W must be a vector of nonnegative weights, or a scalar 0 or 1.
Error in std (line 59)
y = sqrt(var(varargin{:}));
Could someone help me how to rewrite the code?
Thanks and best regards,
Christoph

Réponse acceptée

Star Strider
Star Strider le 24 Juin 2021
I am not certain what ‘M’ actually is.
Try this —
M = {rand(5),rand(5),rand(5)} % Create 'M'
M = 1×3 cell array
{5×5 double} {5×5 double} {5×5 double}
SD = std(cat(3,M{:}),[],3)
SD = 5×5
0.3347 0.2972 0.2701 0.3528 0.1500 0.3883 0.3171 0.2027 0.1444 0.1855 0.2140 0.4325 0.2838 0.2795 0.3368 0.1092 0.2164 0.0409 0.2087 0.3983 0.1550 0.1595 0.3300 0.0953 0.1421
Supply an empty array [] for the weight argument and it should work.
.
  2 commentaires
Christoph Thorwartl
Christoph Thorwartl le 24 Juin 2021
Thanks for the quick response. It works perfectly!
Star Strider
Star Strider le 24 Juin 2021
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Multidimensional Arrays dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by