Coleção modelos
Permutação
Teste de permutação de um termo do ajuste linear: compara o F observado com os F obtidos permutando a resposta.
O que o bloco faz
models/permutation permuta os valores da resposta entre as linhas do ajuste, mantendo os preditores, e recalcula o F do Termo escolhido em cada repetição. O F observado é comparado com essa distribuição. O cálculo usa a mesma decomposição QR do ajuste, sem reajustar, porque a matriz do modelo não muda.
O F é o sequencial (tipo I). O p-valor de Monte Carlo é (excedências + 1) / (reamostras + 1), com empates contados por uma tolerância de 1e-8. A tabela mostra também o p-valor teórico do F, para comparação.
Antes de continuar
Termos que esta página usa, em poucas palavras. As definições completas estão no glossário.
- Hipótese nula
- A afirmação que o teste põe à prova, em geral a de que não há efeito ou diferença (médias iguais, ausência de tendência). O teste mede o quanto os dados são incompatíveis com ela; não rejeitá-la não prova que ela é verdadeira.
- p-valor
- A probabilidade de obter um resultado tão extremo quanto o observado, ou mais, se a hipótese nula fosse verdadeira. p-valor pequeno indica dados pouco compatíveis com a hipótese nula; ele não é a probabilidade de a hipótese nula ser verdadeira nem mede o tamanho do efeito.
- Estatística F
- A razão entre duas estimativas de variância: a explicada por um fator e a residual. Valores muito maiores que 1 indicam que o fator explica mais variação do que o acaso explicaria; é a estatística da análise de variância.
- Bootstrap e reamostragem
- Técnicas que repetem a análise muitas vezes sobre versões modificadas da própria amostra (sorteios com reposição, omissão de observações, embaralhamento) para medir a incerteza de uma estimativa ou obter um p-valor sem depender de uma fórmula pronta.
- Modelo linear
- Um modelo em que a resposta é a soma de efeitos das variáveis explicativas, cada um multiplicado por um coeficiente, mais um erro aleatório. Regressão e análise de variância são casos dele; “linear” se refere aos coeficientes, não à forma da curva.
Quando usar
Quando a distribuição F teórica é duvidosa, por exemplo com erros claramente não normais e poucas repetições, e o ajuste é linear (lm), o que inclui as ANOVAs de efeitos fixos. Se o experimento tem plano de casualização conhecido, prefira o teste de randomização da coleção de experimentos: este bloco não substitui a casualização do delineamento.
Pressupostos
A resposta é permutável sob a hipótese nula entre as observações; use Dentro de quando a permutabilidade vale apenas dentro de estratos (por exemplo, blocos).
Se falhar: Use o desenho de randomização do experimento em
experiments/randomization_test, ou especifique os estratos corretos.O modelo linear e o termo escolhido representam a pergunta testada; o teste é do F sequencial tipo I e depende da ordem dos termos.
Configuração
- Termo — o rótulo de uma linha do quadro da ANOVA; em branco, usa o primeiro.
- Dentro de — coluna que define grupos de permutação. Em branco, permuta entre todas as linhas.
- Reamostras — o número de permutações (padrão 9999).
Quando o termo vem depois de outro que tem efeito, como no DBC (bloco + tratamento), as linhas só são permutáveis sob H0 dentro do mesmo bloco. Nesse caso, use Dentro de = bloco; sem isso, o teste deixa de ser exato.
Exemplo
library(trama)
reg <- tr_registry()
tr_use("trama.models", registry = reg)
tr_flow(reg) |>
tr_add("dados", "models/example", dataset = "PlantGrowth") |>
tr_add("ajuste", "models/anova_dic", resposta = "weight", tratamento = "group", from = "dados") |>
tr_add("perm", "models/permutation", termo = "group", reamostras = 9999, from = "ajuste")Como interpretar
A hipótese nula é que o termo não tem efeito, de modo que qualquer rearranjo da resposta seria igualmente provável. O p-valor de permutação diz em que fração das permutações o F foi pelo menos tão grande quanto o observado. Se ele ficar muito diferente do p-valor teórico, os pressupostos do F merecem atenção. O resultado depende do sorteio; a semente é a do card, e o mesmo card dá a mesma distribuição.
Implementação
coin::oneway_test; independence_test()versão 1.4.3Oráculo de teste: distribuição Monte Carlo approximate; o bloco usa a estatística F observada e reajuste em cada permutação.stats::anova.lm; lm()versão 4.6.0Quadro tipo I para o F observado e reajuste da resposta permutada.
No código O bloco chama trama.models::tr_models_permutation(), em trama.models/R/permutation.R:15.
A conta é implementada pelo próprio trama, sem um pacote R de referência por trás.
Outras funções de pacotes que o bloco usa (14)
stats::anova(ajuste)stats::model.response(stats::model.frame(modelo$ajuste))stats::model.frame(modelo$ajuste)stats::model.frame(modelo$ajuste)stats::formula(modelo$ajuste)stats::formula(modelo$ajuste)stats::model.matrix(aj)stats::terms(aj)ggplot2::ggplot(distribuicao, ggplot2::aes(x = .data[["valor"]]))ggplot2::aes(x = .data[["valor"]])ggplot2::geom_histogram(bins = 30, fill = "#5B7C99", color = "white")ggplot2::geom_vline(xintercept = obs$F, color = "#B34D4D", linewidth = 1)ggplot2::labs(x = "F sob permutação", y = "Contagem", title = paste("Permutação ·", obs$nome))trama.view::tr_view_finish(grafico, aspecto, tema, titulo, rotulo_x, rotulo_y, legenda)
Referências
Teoria
- Hothorn, T.; Hornik, K.; van de Wiel, M. A.; Zeileis, A. (2008). Implementing a Class of Permutation Tests: The coin Package. Journal of Statistical Software, 28(8), 1-23. doi:10.18637/jss.v028.i08
- Phipson, B.; Smyth, G. K. (2010). Permutation P-values Should Never Be Zero: Calculating Exact P-values When Permutations Are Randomly Drawn. Statistical Applications in Genetics and Molecular Biology, 9(1), Article 39. doi:10.2202/1544-6115.1585