编程一系列数据:Matlab
我有一个与统计有关的程序编程一系列数据:Matlab,matlab,statistics,range,octave,Matlab,Statistics,Range,Octave,我有一个与统计有关的程序 maximo = max(muestra); minimo = min(muestra); rango = maximo - minimo; num_intervalo = round(1 + 3.322*log(length(muestra))); amplitud = rango/num_intervalo; rango_intervalo = []; for i=1 : num_intervalo + 1 if i == 1 rango_
maximo = max(muestra);
minimo = min(muestra);
rango = maximo - minimo;
num_intervalo = round(1 + 3.322*log(length(muestra)));
amplitud = rango/num_intervalo;
rango_intervalo = [];
for i=1 : num_intervalo + 1
if i == 1
rango_intervalo(i: num_intervalo + 1) = minimo;
else
rango_intervalo(i: num_intervalo + 1) = rango_tabulado(i) + amplitud;
end
if i == num_intervalo + 1
rango_intervalo(i: num_intervalo + 1) = maximo;
end
end
rango_intervalo = rango_intervalo';
目的是创建九个或k个间隔,其中每个间隔都有其范围:
[1.580 - 2.587]
[2.587 - 3.594]
.
.
[9.636 - 10.650]
使用我编写的代码,它将生成10个数据,而不是9个。
有什么想法吗,你能改进这个代码吗
谢谢。那么:
intervals = linspace(minimo, maximo, num_intervalo + 1 );
intervals = [ intervals(1:end-1); intervals(2:end) ]';
你能试试下面的吗?PS:不是在安装了matlab的机器前,所以只要看看逻辑,如果i==9 rango_intervaloi:num_intervalo+1=maximo;结束:非常好的代码,工作非常完美:即使使用我制作的代码,工作也非常完美@威尔伯·奈克——如果它这么好,你为什么不投它一票呢?谢谢我的名声不到15:/