
25
x={10,10,10,30,20,12,10,12,20,10}; n=Length[x];
Y=Sort[x]; xm=Frequencies[Y]; X=Column[xm,2]
k=Length[X]; m=Column[xm,1]; p=N[m/n]
xp=Transpose[{N[Column[xm,1]/n],Column[xm,2]}]
f[y_]:=Sum[p[[i]]*UnitStep[y-X[[i]]],{i,k}];
Plot[f[y],{y,X[[1]]-1,X[[k]]+1}];
n=500; a0=0; a1=10; eps=0.01;
f[x_]:=ArcTan[a0+a1*x]/Pi+0.5; df=D[f[y],y];
g[z_]:=-( a0+Cot[Pi* z])/a1;
Y=RandomArray[UniformDistribution[0+eps,1-eps],n];
X=Map[g,Y]; Y=Sort[X];
k=10; R=Y[[n]]-Y[[1]]; h=R/k
xr=Table[Y[[1]]+i*h,{i,0,k}]
xs=Table[Y[[1]]+(i-1/2)*h,{i,k}]
m=BinCounts[Y,{Y[[1]],Y[[n]],h}]; m[[1]]+=1; m
p=N[m/n]
p1=BarChart[Transpose[{p,xs}],BarStyle->{Blue}];
p2=Plot[df,{y,Y[[1]],Y[[n]]},PlotStyle->{Red}];
pic1=Show[{p1,p2}];
F[y_]:=Sum[p[[i]]*UnitStep[y-xr[[i]]],{i,k}];
Plot[{F[y],f[y]},{y,Y[[1]],Y[[n]]},
PlotStyle->{Red,Green}];
Fg=CumulativeSums[p]
ygf[y_]:=Tan[(y-0.5)*Pi*(1-2*eps)]; yg=Map[ygf,Fg];
pXY=Transpose[{xs,yg}]; psi=Fit[pXY,{1,y},y]
Пример 2.3 (Matlab)
x=[10,10,10,30,20,12,10,12,20,10]; n=length(x);
Y=sort(x), X=[10,12,20,30], k=length(X);
m=[0,0,0,0];
for i=1:k, for j=1:n,
if Y(j)==X(i), m(i)=m(i)+1; end
end, end
m, p=m/n, f=cumsum(p), stairs(X,f)
n=500; a0=0; a1=10; eps=1e-2;
f=inline('atan(a0+a1*x)/pi+0.5','x','a0','a1');
df=inline('a1./((1+(a0+a1*x).^2)*pi)',...
'x','a0','a1');
g=inline('-(cot(pi*x)+a0)/a1','x','a0','a1');
Y=unifrnd(0+eps,1-eps,1,n); X=g(Y,a0,a1);
Y=sort(X); k=10; R=Y(n)-Y(1), h=R/k, i=0:k-1;
xr=Y(1)+i*h, [m,xs]=hist(Y,k), p=m/n, F=p/h
bar(xs,F,'histc'), hold on
26
x1=Y(1):0.1:Y(n); y1=df(x1,a0,a1);
plot(x1,y1,'r'), hold off, pause
Fg=cumsum(p); stairs(xr,Fg), hold on
y2=f(x1,a0,a1); plot(x1,y2,'r'), hold off, pause
yg=tan((Fg-0.5)*pi*(1-2*eps)), c=polyfit(xs,yg,1)
Пример 2.4 (Mathcad)
x 10101030201210122010()
:=
n length x():=
Y sort x():=
Y
T
10 10 10 10 10 12 12 20 20 30
=
X 10122030()
:=
k length X():=
i0k1
.:=
j0n1−
.:=
m
i
j
if x
j
X
i
1, 0,
)
∑
:=
m
T
5221()=
p
m
n
:=
Fx()
i
p
i
Φ xX
i
−
)
⋅
∑
:=
X
T
10 12 20 30()=
10 20 30
0.5
1
Fy()
y
p
T
0.5 0.2 0.2 0.1()=
n50
:=
j0n1
.:=
a
0
:=
a
1
1
:=
ε 10
−
:=
fx()
1
π
atan a
0
a
1
x⋅+
()
⋅
1
2
+:=
gx()
cot π x⋅
)
a
0
+
a
1
−:=
df x()
x
fx()
d
d
:=
Y runif n 0 ε+, 1 ε−,
)
:=
X
j
gY
j
:=
Y sort X():=
RY
n1−
Y
:=
R 5.484
k1
:=
i0k1
.:=
h
R
k
:=
h 0.548