standard deviation of two elements of a 3d matrix

Greetings,
I have a 672 x 32 x 2800 matrix that I need to chop into a 672 x 2800 matrix but the rows need to be the standard deviation of the columns in the original 3d matrix. Here is what I am doing which is all wrong
new_col_data = zeros(672,2800);
new_col_data = [std(data, 0, 2),:]
I cannot figure this out. Can someone please tell me what is wrong?
Thank you

 Risposta accettata

Shashank Prasanna
Shashank Prasanna il 28 Giu 2013
Modificato: Shashank Prasanna il 28 Giu 2013
A = rand(672,32,2800); % Some random data:
B = std(A,[],2); % Compute the standard deviation
B = squeeze(B); % Squeeze it

Più risposte (2)

Sounds like you want to squeeze it!
squeeze(std(rand(60,30,45),0,2))
I tried this:
>> new_col_data = squeeze(std(data,0,2),:);
Error using var (line 59)
First argument must be single or double.
Error in std (line 32)
Something went wrong. I do not have a single dimension in this matrix

1 Commento

Mine doesn't have a squeeze(blah,:). It's supposed to jsut be squeeze(blah)

Accedi per commentare.

Categorie

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by