nanstd use in matlab

5 次查看(过去 30 天)
Feihao Sun
Feihao Sun 2021-11-17
回答: Chunru 2021-11-17
Hi, For Matlab, I wonder how to use nanstd to calculate the standard deviation of a 3D matrix with NaN values.
Right now assuming a 3-D matrix A_3D
I used A_std = nanstd(A_3D, [],3);
assuming the first numbers in the 3D matrix is 0.3735 and 0.3477 respectively,
using my code would give me a standard deviation of 0.0182 but in reality, it should be 0.0129, I don't know what is going on and I didn't find answers online

采纳的回答

Chunru
Chunru 2021-11-17
You are using default normalization "[]", which normalised the std by (N-1). If you want to get 0.0129, you need to change [] into 1.
nanstd([0.3735; 0.3477])
ans = 0.0182
nanstd([0.3735; 0.3477], 1)
ans = 0.0129

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Audio I/O and Waveform Generation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by