hi . i have n observation z1 , z2, z3 , ...... zn that is numerical value and not ordered . i need partion it to interval as following

1 回表示 (過去 30 日間)
z1,z2,...,zn % known data
a=min(z)
b=max(z)
k =3.322*log(n) %such that k number of interval
L= (max(z)-min(z))/k %such that L is length of each interval
i need the program display interval as following
u1=(a,a+L)
u2=(a+L,a+2*L)
.
.
.
uend=( a+end*L,b)

採用された回答

Image Analyst
Image Analyst 2016 年 8 月 14 日
Another way is to use linspace():
n = 50;
z = 1000 * rand(1, n); % Sample data
a=min(z)
b=max(z)
k =3.322*log(n) % such that k is the number of intervals
L= (max(z)-min(z))/k %such that L is length of each interval
% Here is my solution:
intK = round(k)
uMatrix = [linspace(a, b-L, intK)', linspace(a+L, b, intK)']
  2 件のコメント
mohammed elmenshawy
mohammed elmenshawy 2016 年 8 月 15 日
thank u very much , i need getting the average for this interval
Image Analyst
Image Analyst 2016 年 8 月 15 日
The average what ? The average interval length is L. What else is there to take the average of ?

サインインしてコメントする。

その他の回答 (1 件)

Azzi Abdelmalek
Azzi Abdelmalek 2016 年 8 月 14 日
編集済み: Azzi Abdelmalek 2016 年 8 月 14 日
Edit
a=min(z)
b=max(z)
k =3.322*log(n) %such that k number of interval
L= (max(z)-min(z))/k
m=fix((b-a)/L)
out=[cell2mat(arrayfun(@(x) [a+x*L,a+(x+1)*L],(0:m-1)','un',0));a+m*L,b]

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by