2016-02-26 131 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

相關問題