Bu benzetimin amacım, birkaç faktör kombinasyonu altında testlerin tip 1 hata oranını değerlendirmektir.R : kodlama neden 0,00 sonuçta gösteriliyor
örnek sizes- (10,10), (10,25), (25,25), (25,50), (25.100), 50,25), (50,100), (100, 25), (100.100)
standart sapma ratio- (1.00, 1.50, 2.00, 2.50, 3.00 ve 3.50) eşit olmayan çarpıklık ve eşit çarpıklık gama dağılımının
dağıtım
İlgili 2 örnek testi birleştirilmiş varyans t testi ve welch t test ve mann whitney testi. Yukarıdaki kodları kullanarak bir kodu değiştirmeyi denedim. nasıl
########################################
#for normal distribution setup
# to ensure the reproducity of the result
#(here we declare the random seed generator)
set.seed(1)
## Put the samples sizes into matrix then use a loop for sample sizes
sample_sizes<-matrix(c(10,10,10,25,25,25,25,50,25,100,50,25,50,100,100,25,100,100),
nrow=2)
#create vector to combine all std deviations
sds<-matrix(c(4,4,6,4,8,4,10,4,12,4,14,4),nrow=2)
sd1<-c(4,6,8,10,12)
sd2<-c(4,4,4,4,4)
sds2<-rep(sd2,each=9)
##(use expand.grid)to create a data frame from combination of data
ss_sds1<- expand.grid(sample_sizes[2,], sd1)
#create a matrix combining the fifty four cases of combination of ss and sds
all_combine <- cbind(rep(sample_sizes[1,], 5), ss_sds1,sds2)
# name the column by sample samples 1 and 2 and standard deviation
colnames(all_combine) <- c("m", "n", "sds1","sds2")
#number of simulations
nSims<-10000
#set significance level,alpha for the whole simulation
alpha<-0.05
#set up matrix for storing data from simulation
#set nrow =nsims because wan storing every p-value simulated
matrix1_equal <-matrix(0,nrow=nSims,ncol=9)
matrix4_unequal<-matrix(0,nrow=nSims,ncol=9)
matrix7_mann <-matrix(0,nrow=nSims,ncol=9)
#set up vector for storing data from the three tests (nrow for all_combine=45)
equal1 <- unequal4<- mann7 <- rep(0, nrow(all_combine))
# this loop steps through the all_combine matrix
for(ss in 1:nrow(all_combine))
{
#generate samples from the first column and second column
m<-all_combine[ss,1]
n<-all_combine[ss,2]
for (sim in 1:nSims)
{
#generate random samples from 2 normal distribution
x<-rnorm(m,5,all_combine[ss,3])
y<-rnorm(n,5,4)
#extract p-value out and store every p-value into matrix
matrix1_equal[sim,1]<-t.test(x,y,var.equal=TRUE)$p.value
matrix4_unequal[sim,4]<-t.test(x,y,var.equal=FALSE)$p.value
matrix7_mann[sim,7] <-wilcox.test(x,y)$p.value
}
##store the result
equal1[ss]<- mean(matrix1_equal[,1]<=alpha)
unequal4[ss]<-mean(matrix4_unequal[,4]<=alpha)
mann7[ss]<- mean(matrix7_mann[,7]<=alpha)
}
# combine results
nresult <- cbind(all_combine, equal1, unequal4, mann7)
save.image(file="normal.data")
Ben Ar yeniyim, şimdi normal dağılımda bir kod tamamlanmış ve eğer başka kullanılarak gama dağılımı dağılımı konusunda iki tane daha simülasyona eklemek zorunda var ... Herkes lütfen bazı tavsiyeler verebilir normal distr. gamma distr için? Şu an bu kısımda sıkışmış durumdayım ...
YARDIM! Yukarıdaki kod, birkaç kez sonuç 0.00 verdi, ben zaten birçok kez kontrol ve henüz herhangi bir hata tespit etmedi. Lütfen
ve nasıl' t_equal', 't_unequal' ve' mann' yarattı. Her benzetimde saklamak istediğiniz matrisler üzerine yazdığınız vektörler gibi görünürler. –
Üzgünüm, nsds standart sapma oranının uzunluğudur. Ve t_equal, t_unequal ve mann veri simüle ve onlara depolanmış olan vektörlerdir ... –
Sadece geri kalanlarımı sorularıma düzenledim .... Yorumunuz için teşekkürler ... –