Primeiro passo

Definiremos que todas as análises serão avaliadas com um nível de significância de 5%

Gere os dados de uma distribuição, aplique o teste de hipótese e anote se o teste rejeitou ou não a hipótese de que o modelo é adequado

Gerando uma amostra weibull de tamanho 100

set.seed(123)
amostra <- rweibull(n = 100, shape = 1.5, scale = 10)
ks.test(amostra, "pweibull", 1.5, 10)
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  amostra
## D = 0.052204, p-value = 0.9481
## alternative hypothesis: two-sided

Não rejeitamos a hipotese de que a amostra segue uma distribuição Weibull

Segundo passo

Utilizando a função ks.test para a simulação de monte carlo com 5000 repetições

set.seed(123)
ks.test(amostra, "pweibull", 1.5, 10, exact = FALSE, simulate.p.value = TRUE, B = 5000)
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  amostra
## D = 0.052204, p-value = 0.9481
## alternative hypothesis: two-sided

Mesmo com a simulação de monte carlo, o teste ficou identico.

Logo estamos aceitando a hipótese nula de que as amostras são distribuídas com uma distribuição Weibull.

Terceiro passo

Avaliando o comportamento das amostras variando a variância.

set.seed(123)

amostra1 <- rweibull(n = 100, shape = 1.5, scale = 10)
amostra2 <- rweibull(n = 100, shape = 1.5, scale = 20)
amostra3 <- rweibull(n = 100, shape = 1.5, scale = 30)
amostra4 <- rweibull(n = 100, shape = 1.5, scale = 40)

Fazendo para cada amostra individualmente

ks_test1 <- ks.test(amostra1, "pweibull", shape = 1.5, scale = 10);ks_test1$p.value
## [1] 0.9480752
ks_test2 <- ks.test(amostra2, "pweibull", shape = 1.5, scale = 20);ks_test2$p.value
## [1] 0.3048253
ks_test3 <- ks.test(amostra3, "pweibull", shape = 1.5, scale = 30);ks_test3$p.value
## [1] 0.8499987
ks_test4 <- ks.test(amostra4, "pweibull", shape = 1.5, scale = 40);ks_test4$p.value
## [1] 0.7534252

Não rejeitamos nenhuma hipórese nula de que elas são amostras da mesma distribuição, mesmo com as variancias diferentes.

Agora realizando o teste comparativo 2 a 2 temos:

m12=ks.test(amostra1, amostra2);m12$p.value 
## [1] 1.001244e-07
m13=ks.test(amostra1, amostra3);m13$p.value 
## [1] 1.554312e-15
m14=ks.test(amostra1, amostra4);m14$p.value
## [1] 0
m23=ks.test(amostra2, amostra3);m23$p.value 
## [1] 4.70515e-06
m24=ks.test(amostra2, amostra4);m24$p.value 
## [1] 1.011646e-11
m34=ks.test(amostra3, amostra4);m34$p.value 
## [1] 0.02431031

como observamos, aceitamos hipótese nula de que elas são amostras da mesma distribuição.