2016-02-26 263 views
0

你好我是Matlab新手,我试图找到一组数据中的数据点的数量是x偏离平均值的标准偏差。数据集是使用randn的5000个随机数。我想用一个循环做到这一点,我想的步骤应该采取如下:如何计算数据集中与Matlab中平均值相差x个标准差的数据点的数量

  1. 有一个循环都要经过5000个随机数据点
  2. 计数的+点 - 1个STD从平均
  3. 打印我真的不知道从哪里开始,如果有人能在正确的方向点我将不胜感激分

的数量。谢谢。

+0

下面的代码告诉你数组'a'中有多少元素在'lim1'和'lim2'之间:'sum(a> = lim1&a <= lim2)'。现在将其适应于一个数组,具有均值和标准差。 – 2016-02-26 16:47:27

+0

有一个函数来计算标准推导,不需要循环或类似。检查'std'文档[ – Daniel

+0

[看看这个问题,它非常类似](http://stackoverflow.com/questions/1450322/matlab-excluding-data-outside-1-standard-deviation)。而不是计算,它是关于删除,但CST-Link已经向您解释如何计数。 – Daniel

回答

0
N = 5000;   % Number of data points 
x = randn(N,1); % Random vector 
mu = mean(x);  % Mean of vector 
sig = std(x);  % Stan. dev. of vector 

% This is a logical array that signifies where the 
% condition is true. 
inds = (x >= (mu - sig)) & (x <= (mu + sig)); 

你能从这里拿走吗?

+0

谢谢,帮助我想象它 – Jay

相关问题