Programa R para Biologia da Conservação
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?

2 participantes

Ir para baixo

ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?  Empty ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?

Mensagem por vanessavk Seg Ago 12, 2019 6:32 pm

Olá prof. Marcos,
Estou interessada em comparar o efeito de diferentes tratamentos (=10 tratamentos) sobre 4 variáveis resposta, e também se há interação com o momento em que eu faço a medição (24h e 96h).
Pensei em fazer várias anovas de dois fatores, uma para cada variável... estaria correto?

Eu lembro que em uma das aulas aprendemos a função tapply para testar variâncias, médias, etc.. para várias variáveis ao mesmo tempo.
Teria alguma função que eu pudesse testar cada passo para todas as variáveis ao mesmo tempo como faria a tapply?
Ex. testar para todo mundo a homogeneidade de variâncias e fazer o shapiro pra todo mundo em "um único" comando...

Segue os dados... Obrigada! Smile

DMA Tratamentos Repeticao momento Oxig Temp pH Cond
0 C a 24 7.2 23.4 6.81 167
0 C b 24 7.1 23.3 6.79 167
0 C c 24 7.5 23.4 6.79 167
0 C d 24 6.8 23.2 6.81 167
150 T1 a 24 7.2 23.2 6.84 204
150 T1 b 24 7.5 23.2 6.86 204
150 T1 c 24 7.9 23.4 6.91 206
150 T1 d 24 7.5 23.2 6.93 203
250 T2 a 24 7.4 23.3 6.95 231
250 T2 b 24 7.1 23.4 6.97 231
250 T2 c 24 7.9 23.3 6.99 229
250 T2 d 24 7.5 23 7.02 231
350 T3 a 24 7.3 23.2 7.03 255
350 T3 b 24 7.4 23.2 7.04 257
350 T3 c 24 7.9 23 7.06 256
350 T3 d 24 7.6 22.9 7.08 256
450 T4 a 24 7.9 23.4 7.11 282
450 T4 b 24 6.8 23.4 7.13 279
450 T4 c 24 7.1 23.2 7.14 283
450 T4 d 24 7.5 23 7.15 280
550 T5 a 24 7.3 23.2 7.15 304
550 T5 b 24 7.1 23.4 7.17 305
550 T5 c 24 7.9 23.1 7.18 306
550 T5 d 24 6.8 23 7.21 308
650 T6 a 24 6.6 25.3 7.59 336
650 T6 b 24 6.7 24.9 7.64 334
650 T6 c 24 6.9 25.1 7.67 333
650 T6 d 24 6.8 24.9 7.69 334
750 T7 a 24 2.5 24.4 8.18 365
750 T7 b 24 6 24.1 8.18 362
750 T7 c 24 6.1 23.9 8.2 359
750 T7 d 24 4.9 23.7 8.17 362
850 T8 a 24 2.3 23.8 8.12 388
850 T8 b 24 3.3 24 8.09 390
850 T8 c 24 5.7 23.6 8.1 387
850 T8 d 24 3.3 23.4 8.06 388
950 T9 a 24 1.5 23.8 7.98 420
950 T9 b 24 5.7 23.9 8.01 403
950 T9 c 24 5.7 23.7 8.04 409
950 T9 d 24 3.1 23.3 8.04 416
0 C a 96 6.7 24.7 7.96 170
0 C b 96 6.5 24.7 7.96 169
0 C c 96 7 24.7 7.97 169
0 C d 96 6.7 24.3 7.97 169
250 T2 a 96 6.2 24.6 7.96 233
250 T2 b 96 6.1 24.7 7.95 235
250 T2 c 96 5.7 24.6 7.94 234
250 T2 d 96 6.1 24.2 7.93 235
350 T3 a 96 4.3 24.7 7.88 262
350 T3 b 96 5.2 24.7 7.86 262
350 T3 c 96 6 24.3 7.86 263
350 T3 d 96 6.7 24.2 7.88 262
450 T4 a 96 4.9 24.8 7.87 290
450 T4 b 96 4.9 24.8 7.85 285
450 T4 c 96 5.7 24.4 7.85 288
450 T4 d 96 6.2 24.1 7.86 285
550 T5 a 96 5.6 24.8 7.86 310
550 T5 b 96 4.4 24.8 7.83 315
550 T5 c 96 5.8 24.4 7.84 312
550 T5 d 96 5.8 24.2 7.85 321
650 T6 a 96 7.6 23 7.69 352
650 T6 b 96 5.7 22.9 7.77 352
650 T6 c 96 6.8 23 7.72 346
650 T6 d 96 7.6 22.6 7.74 351
750 T7 a 96 7.8 23 7.02 399
750 T7 b 96 7.3 23.1 7.07 397
750 T7 c 96 6.7 23 7.09 386




vanessavk

Mensagens : 27
Data de inscrição : 20/05/2019

Ir para o topo Ir para baixo

ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?  Empty Re: ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?

Mensagem por vanessavk Seg Ago 12, 2019 6:58 pm

Só pra complementar... eu pensei em fazer uma anova, e não uma regressão, pois os meus tratamentos são concentrações de DMA e a concentração deles salta de 100 em 100, como não é contínuo achei que não daria pra fazer uma regressão... se eu estiver errada... daria pra fazer uma regressão multipla só pra comparar também o efeito do momento junto?

vanessavk

Mensagens : 27
Data de inscrição : 20/05/2019

Ir para o topo Ir para baixo

ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?  Empty Re: ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?

Mensagem por Prof. Marcos Seg Ago 12, 2019 8:53 pm

Aqui um exemplo de um for loop que vai repetir o mesmo procedimento quantas vezes você quiser:

Código:

resultados<-list()

for (i in 5:8) {
    resultados[[i]]<-aov(dados[ , i] ~ dados$Tratamentos)
}

#Vendo os resultados de uma das variáveis
summary(resultados[[6]])

Isto foi feito durante o webnário de 12-08-2019
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?  Empty Re: ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?

Mensagem por Prof. Marcos Sáb Ago 17, 2019 8:40 am

Atualizei o exemplo acima, deixei o código mais elegante (a lista agora tem apenas 4 elementos) e incluí os nomes, aqui está:

Código:
#Criando a lista para guardar os resultados:
resultados<-list()

#Versão que cria apenas os 4 elementos da lista:
for (i in 1:4) {
    resultados[[i]]<-aov(dados[ , i+4] ~ dados$Tratamentos)
}

#Atribuindo nomes à lista:
names(resultados)<-colnames(dados[5:8])

#Agora você pode "chamar" o resultado de duas formas:
summary(resultados[[1]])
#Ou usando o nome:
summary(resultados[["Oxig"]])
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?  Empty Re: ANOVA - Como rodar a mesma função para várias variáveis de uma única vez?

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos