jisq.test.cont=function(x,distribucion=NULL,
nclases=c("sturgess","sqrt","user"),
output=TRUE,
alpha=NULL,
nparam=2,...)
{
if (nclases=="sturgess") {
k=floor(1+3.3*log10(length(x)))
q.distribucion=eval(parse(text=paste("q",distribucion,sep="")))
d.distribucion=eval(parse(text=paste("d",distribucion,sep="")))
q=q.distribucion((1:(k-1))/k,...)
tol=sqrt(.Machine$double.eps)
xbreaks=c(min(x)-tol,q,max(x)+tol)
if (output==TRUE) {
xhist=hist(x,
breaks = xbreaks,
freq=FALSE,
lty=2,border = "grey50",
xlab="Valores del conjunto de datos",
ylab="Frecuencia relativa",
main="Histograma para el conjunto"
,col="skyblue")
curve(d.distribucion(x,...),add=TRUE)
}else {
xhist=hist(x,breaks = xbreaks,plot = FALSE)
}
cat("\nIntervalo de aceptacion para la media\n")
linf=round((1/2+(qnorm((alpha)/2)*(1/sqrt(12*length(x))))),4)
lsup=round((1/2+(qnorm((alpha/2),lower.tail = FALSE)*(1/sqrt(12*length(x))))),4)
int_media=list(Liminf=linf,Promedio=round(mean(x),4),Limsup=lsup)
print(as.data.frame(int_media))
cat("\n")
cat("\nIntervalo de aceptacion para la varianza\n")
linf_var=round(qchisq((alpha/2),df=length(x)-1,lower.tail = TRUE)/(12*(length(x)-1)),4)
lsup_var=round(qchisq((alpha/2),df=length(x)-1,lower.tail = FALSE)/(12*(length(x)-1)),4)
int_varianza=list(Liminf=linf_var,Varianza=var(x),Limsup=lsup_var)
print(as.data.frame(int_varianza))
cat("\n")
O=xhist$counts
E=length(x)/k
dname=deparse(substitute(x))
method="Ji-Cuadrada de Pearson"
estadistico=sum((O-E)^2/E)
names(estadistico)="Estadistico ji-cuadrada"
parametro=k-nparam-1
names(parametro)="Grados de libertad"
peval=round(pchisq(estadistico,df=parametro,lower.tail = FALSE),4)
criterio=list(p_value=peval,DF=parametro,Metodo=method)
print(as.data.frame(criterio))
clases=format(xbreaks)
clases=paste("(",clases[-(k+1)],",",clases[-1],"]",sep="")
resultados=list(Intervalos=clases,Frecuencia_Observada=O,Frecuencia_Esperada=E,Residuales=(O-E)/sqrt(E))
if (output==TRUE){
cat("\nTabla de la Distribución Ji-Cuadrada\n")
print(as.data.frame(resultados))
}
s=x[-length(x)]
r=x[-1]
plot(s,r,pch=19,
xlab="Valores del conjunto de datos",
ylab="Valores del conjunto de datos",
main="Diagrama de dispersion",
sub="Prueba de Aleatoriedad")
} else {
if (nclases=="sqrt"){
k=floor(sqrt(length(x)))
q.distribucion=eval(parse(text=paste("q",distribucion,sep="")))
d.distribucion=eval(parse(text=paste("d",distribucion,sep="")))
q=q.distribucion((1:(k-1))/k,...)
tol=sqrt(.Machine$double.eps)
xbreaks=c(min(x)-tol,q,max(x)+tol)
if (output==TRUE) {
xhist=hist(x,
breaks = xbreaks,
freq=FALSE,
lty=2,
border = "grey50",
xlab="Valores del conjunto de datos",
ylab="Frecuencia relativa",
main="Histograma para el conjunto",
col="skyblue")
curve(d.distribucion(x,...),add=TRUE)
}else {
xhist=hist(x,breaks = xbreaks,plot = FALSE)
}
cat("\nIntervalos de aceptación para la media\n")
linf=round((1/2+(qnorm((alpha)/2)*(1/sqrt(12*length(x))))),4)
lsup=round((1/2+(qnorm((alpha/2),lower.tail = FALSE)*(1/sqrt(12*length(x))))),4)
int_media=list(Liminf=linf,Promedio=round(mean(x),4),Limsup=lsup)
print(as.data.frame(int_media))
cat("\n")
cat("\nIntervalo de aceptacion para la varianza\n")
linf_var=round(qchisq((alpha/2),df=length(x)-1,lower.tail = TRUE)/(12*(length(x)-1)),4)
lsup_var=round(qchisq((alpha/2),df=length(x)-1,lower.tail = FALSE)/(12*(length(x)-1)),4)
int_varianza=list(Liminf=linf_var,Varianza=var(x),Limsup=lsup_var)
print(as.data.frame(int_varianza))
cat("\n")
O=xhist$counts
E=length(x)/k
dname=deparse(substitute(x))
method="Ji-Cuadrada de Pearson"
estadistico=sum((O-E)^2/E)
names(estadistico)="Estadistico ji-cuadrada"
parametro=k-nparam-1
names(parametro)="Grados de libertad"
peval=pchisq(estadistico,df=parametro, lower.tail = FALSE)
criterio=list(p_value=peval,DF=parametro,Metodo=method)
print(as.data.frame(criterio))
clases=format(xbreaks)
clases=paste("(",clases[-(k+1)],",",clases[-1],"]",sep="")
resultados=list(Intervalos=clases,frecuencia_observada=O,frecuencia_esperada=E,residuales=(O-E)/sqrt(E))
if (output==TRUE){
cat("\nTabla de la Distribución Ji-Cuadrada\n")
print(as.data.frame(resultados))
}
s=x[-length(x)]
r=x[-1]
plot(s,r,pch=19,
xlab="Valores del conjunto de datos",
ylab="Valores del conjunto de datos",
main="Diagrama de dispersion",
sub="Prueba de Aleatoriedad")
}else{
k=as.integer(readline(prompt = "Ingresa el número de clases:"))
q.distribucion=eval(parse(text=paste("q",distribucion,sep="")))
d.distribucion=eval(parse(text=paste("d",distribucion,sep="")))
q=q.distribucion((1:(k-1))/k,...)
tol=sqrt(.Machine$double.eps)
xbreaks=c(min(x)-tol,q,max(x)+tol)
if (output==TRUE) {
xhist=hist(x,
breaks = xbreaks,
freq=FALSE,
lty=2,
border = "grey50",
xlab = "Valores del conjunto de datos",
ylab="Frecuencia relativa",
main="Histograma del conjunto",
col="skyblue")
curve(d.distribucion(x,...),add=TRUE)
}else {
xhist=hist(x,breaks = xbreaks,plot = FALSE)
}
cat("\nIntervalos de aceptación para la media\n")
linf=round((1/2+(qnorm((alpha)/2)*(1/sqrt(12*length(x))))),4)
lsup=round((1/2+(qnorm((alpha/2),lower.tail = FALSE)*(1/sqrt(12*length(x))))),4)
int_media=list(Liminf=linf,Promedio=round(mean(x),4),Limsup=lsup)
print(as.data.frame(int_media))
cat("\n")
cat("\nIntervalo de aceptacion para la varianza\n")
linf_var=round(qchisq((alpha/2),df=length(x)-1,lower.tail = TRUE)/(12*(length(x)-1)),4)
lsup_var=round(qchisq((alpha/2),df=length(x)-1,lower.tail = FALSE)/(12*(length(x)-1)),4)
int_varianza=list(Liminf=linf_var,Varianza=var(x),Limsup=lsup_var)
print(as.data.frame(int_varianza))
cat("\n")
O=xhist$counts
E=length(x)/k
dname=deparse(substitute(x))
method="Ji-Cuadrada de Pearson"
estadistico=sum((O-E)^2/E)
names(estadistico)="Estadistico ji-cuadrada"
parametro=k-nparam-1
names(parametro)="Grados de libertad"
peval=pchisq(estadistico,df=parametro, lower.tail = FALSE)
criterio=list(p_value=peval,DF=parametro,Metodo=method)
print(as.data.frame(criterio))
clases=format(xbreaks)
clases=paste("(",clases[-(k+1)],",",clases[-1],"]",sep="")
resultados=list(Intervalos=clases,frecuencia_observada=O,frecuencia_esperada=E,residuales=(O-E)/sqrt(E))
if (output==TRUE){
cat("\nTabla de la Distribución Ji-Cuadrada\n")
print(as.data.frame(resultados))
}
s=x[-length(x)]
r=x[-1]
plot(s,r,pch=19,
xlab="Valores del conjunto de datos",
ylab="Valores del conjunto de datos",
main="Diagrama de dispersion",
sub="Prueba de Aleatoriedad")
}
}
}