Nothing
wquad.conc <-
function(db,test="Default",B=1000,alpha=0.05) {
C<-ncol(db)
R<-nrow(db)
row.sum<-rowSums(db)
db2<-db^2
row.sum2<-rowSums(db2)
w<-matrix(,nrow=C,ncol=C)
for (j in 1:C) {
for(k in 1:C){
w[j,k]<-1-((abs(j-k))^2/(C-1)^2)
}
}
ww<-rep(0,R)
for(i in 1:R) {
for (j in 1:(C-1)){
l<-j+1
for(k in l:C) {
ww[i]<-ww[i]+(db[i,j]*db[i,k]*w[j,k])
}
}
}
xi<-c()
pi<-c()
for(h in 1:R) {
xi[h]<-(0.5*row.sum2[h])+ww[h]-(0.5*row.sum[h])
pi[h]<-(2*xi[h])/(row.sum[h]*(row.sum[h]-1))
}
p.avg<-mean(pi)
pe<-(1/(C^2))*sum(w)
s.star<-(p.avg-pe)/(1-pe)
obj.min<-c()
for (i in 1:R) {
obj.min[i]<-(row.sum[i]-2)/(row.sum[i]-1)
}
sum.obj.min<-sum(obj.min)*((3*C)/(2*R))
min.s<-(sum.obj.min-2*C+1)/(C+1)
s.star
pi.boot.w<-list()
p.boot.w<-c()
s.boot.w<-c()
for ( i in 1:B) {
pi.boot.w[[i]]<-sample(pi,size=nrow(db),replace=TRUE)
p.boot.w[i]<-mean(pi.boot.w[[i]])
s.boot.w[i]<-(p.boot.w[i]-pe)/(1-pe)
}
s.boot.ci.w<-quantile(s.boot.w,probs=c(alpha/2,1-alpha/2))
Default<-function(db) {
s.res<-c(s.star,min.s,s.boot.ci.w)
names(s.res)<-c("S*","min","LCL","UCL")
s.res
}
MC<-function(db)
{
matrix.mc<-list()
matrix.mc2<-list()
R<-nrow(db)
C<-ncol(db)
w.sum<-list()
rs.mc<-list()
rs2.mc<-list()
xi.mc<-list()
pi.mc<-list()
for (h in 1:B) {
matrix.mc[[h]]<-matrix(,nrow=R,ncol=C,
byrow=T)
matrix.mc2[[h]]<-matrix(,nrow=R,ncol=C,byrow=T)
w.sum[[h]]<-rep(0,R)
xi.mc[[h]]<-rep(0,R)
pi.mc[[h]]<-rep(0,R)
}
for (k in 1:B) {
for (j in 1:R) {
matrix.mc[[k]][j, ] <-t(rmultinom(1,size = rowSums(db)[j], prob = rep(1/C,C)))
matrix.mc2[[k]]<-(matrix.mc[[k]])^2
rs.mc[[k]]<-rowSums(matrix.mc[[k]])
rs2.mc[[k]]<-rowSums(matrix.mc2[[k]])
}
}
for (g in 1:B) {
for(i in 1:R) {
for (j in 1:(C-1)){
l<-j+1
for(k in l:C) {
w.sum[[g]][i]<-w.sum[[g]][i]+(matrix.mc[[g]][i,j]*matrix.mc[[g]][i,k]*w[j,k])
}
}
}
}
p.avg.mc<-c()
pe.mc<-c()
s.star.mc<-c()
for(g in 1:B)
for(h in 1:R) {
xi.mc[[g]][h]<-(0.5*rs2.mc[[g]][h])+w.sum[[g]][h]-(0.5*rs.mc[[g]][h])
pi.mc[[g]][h]<-(2*xi.mc[[g]][h])/(rs.mc[[g]][h]*(rs.mc[[g]][h]-1))
p.avg.mc[g]<-mean(pi.mc[[g]])
pe.mc[g]<-(1/(C^2))*sum(w)
s.star.mc[g]<-(p.avg.mc[g]-pe.mc[g])/(1-pe.mc[g])
}
crit.s.mc <- quantile(s.star.mc, 0.95)
binary <- c()
for (i in 1:length(s.star.mc)) {
binary[i] <- (s.star.mc[i] >= s.star)
}
pvalue <- sum(binary)/B
s.res<-c(s.star,min.s,s.boot.ci.w,pvalue)
names(s.res)<-c("S*","min","LCL","UCL","pvalue")
s.res
}
switch(test,Default=Default(db),MC=MC(db))
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.