how can i compute std 2d

Hi
iwould like to ask how can i obtain std along all the rows and columns as culored image that explain the values of std
the matrix dimension is 51 71 any suggestion ?
thanks

2 Comments

Could you give an example of what you would like the output to look like?
like this image that explain the std

Sign in to comment.

Answers (1)

data = randn(51, 71).*rand(51,71); %just some data
std_along_columns = std(data, [], 1); %one result for each column
std_along_rows = std(data, [], 2); %one result for each row
std_overall = std(data(:)); %over entire array
whos
Name Size Bytes Class Attributes data 51x71 28968 double std_along_columns 1x71 568 double std_along_rows 51x1 408 double std_overall 1x1 8 double

2 Comments

thank you but can i plot them in matrix that explain different colors of std
You cannot. std means standard deviation which is property of groups of data, not of individual points. For example you can take the standard deviation along the rows and do a line plot of that.
In order to have a 2 dimension array of standard deviation results, you would have need to have started with a 3D array. For example,
cmap = flipud(hot(64));
data = sort(randn(51, 71, 83) .* rand(51, 71, 83),1); %just some data
s = std(data, [], 3);
imagesc(s); colormap(cmap)
colorbar()

Sign in to comment.

Categories

Find more on MATLAB in Help Center and File Exchange

Tags

Asked:

on 25 Feb 2022

Commented:

on 25 Feb 2022

Community Treasure Hunt

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

Start Hunting!