Ferramentas do usuário

Ferramentas do site


02_tutoriais:tutorial7:start

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
Próxima revisão Ambos lados da revisão seguinte
02_tutoriais:tutorial7:start [2020/10/01 16:12]
adalardo [Variável Indicadora]
02_tutoriais:tutorial7:start [2020/10/02 18:12]
adalardo [Tabela de Anova de uma Regressão]
Linha 12: Linha 12:
  
 Os modelos lineares são uma generalização dos testes de hipótese clássicos mais simples. Uma regressão linear, por exemplo, só pode ser aplicada para dados em que tanto a variável preditora quanto a resposta são contínuas, enquanto uma análise de variância é utilizada quando a variável preditora é categórica. Os modelos lineares não têm essa limitação,​ podemos usar variáveis contínuas ou categóricas indistintamente. Os modelos lineares são uma generalização dos testes de hipótese clássicos mais simples. Uma regressão linear, por exemplo, só pode ser aplicada para dados em que tanto a variável preditora quanto a resposta são contínuas, enquanto uma análise de variância é utilizada quando a variável preditora é categórica. Os modelos lineares não têm essa limitação,​ podemos usar variáveis contínuas ou categóricas indistintamente.
-<WRAP center round box 40%>+<WRAP center round box 80%>
 __**Videoaula Modelo Linear I**__ __**Videoaula Modelo Linear I**__
 O vídeo é proveniente de outra disciplina, desconsidere qualquer referência a ela. O vídeo é proveniente de outra disciplina, desconsidere qualquer referência a ela.
 +<WRAP center round tip 80%>
 {{youtube>​b4VgLr6loGE}} {{youtube>​b4VgLr6loGE}}
 +
 +</​WRAP>​
  
  
 </​WRAP>​ </​WRAP>​
  
-No quadro abaixo estão listados alguns dos testes clássicos frequentistas. Estes testes foram criados para diferentes naturezas de variáveis respostas e preditoras. Você já refletiu sobre a natureza das variáveis do seu estudo? Esse é um passo importante na tomada de decisão da análise adequada, assim como seu acoplamento com a hipótese ​do trabalho é fundamental!+No quadro abaixo estão listados alguns dos testes clássicos frequentistas. Estes testes foram criados para diferentes naturezas de variáveis respostas e preditoras. Você já refletiu sobre a natureza das variáveis do seu estudo? Esse é um passo importante na tomada de decisão da análise adequada, assim como seu acoplamento com a hipótese ​de trabalho é fundamental!
  
  
Linha 47: Linha 50:
  
  
-Parece complicado, mas é simples gerar dados aleatórios com essa estrutura do R. Vamos definir primeiro ​qual são os parâmetros que estão na nossa população,​ ou seja qual o valor de $\alpha$ e $\beta$ da relação entre ''​y''​ e ''​x''​ na população. Além disso, vamos definir também qual a variabilidade associada a essa relação, o nosso $\epsilon$.+Parece complicado, mas é simples gerar dados aleatórios com essa estrutura do R. Vamos definir primeiro ​quais são os parâmetros que estão na nossa população,​ ou seja qual o valor de $\alpha$ e $\beta$ da relação entre ''​y''​ e ''​x''​ na população. Além disso, vamos definir também qual a variabilidade associada a essa relação, o nosso $\epsilon$.
  
 $$ y = 5.3 + 0.12 x + N(0, 5) $$  $$ y = 5.3 + 0.12 x + N(0, 5) $$ 
  
  
-Antes de gerar os dados aleatórios,​ vamos utilizar uma ferramenta que define a raiz da semente aleatória que o R irá usar. Com isso, apesar dos dados gerados serem proveniente ​de uma amostra aleatória, todos que utilizarem a mesma semente terão os mesmo valores amostrados. Em seguida vamos criar uma sequência para representar a variável preditora ''​x''​ e a partir da relação acima, calcular o ''​y0'',​ que são os valores associados a essa relação determinística com ''​x''​ e também criar um vetor ''​res''​ que define a variabilidade do nossos dados:+Antes de gerar os dados aleatórios,​ vamos utilizar uma ferramenta que define a raiz da semente aleatória que o R irá usar. Com isso, apesar dos dados gerados serem provenientes ​de uma amostra aleatória, todos que utilizarem a mesma semente terão os mesmo valores amostrados. Em seguida vamos criar uma sequência para representar a variável preditora ''​x''​ ea partir da relação acima, calcular o ''​y0'',​ que são os valores associados a essa relação determinística com ''​x''​ e também criar um vetor ''​res''​ que define a variabilidade do nossos dados:
  
 <code rsplus> <code rsplus>
 set.seed(1) set.seed(1)
-<- round(seq(12,​ 220, len = 15), 1) +x1 <- round(seq(12,​ 220, len = 15), 1) 
-y0 <- 10.3 + 0.12 * x +y0 <- 10.3 + 0.12 * x1 
-res <- rnorm(length(x), 0, 5)+res <- rnorm(length(x1), 0, 5)
 y1 <- y0 + res y1 <- y0 + res
 +xm <- mean(x1)
 +ym <- mean(y1)
 </​code>  ​ </​code>  ​
  
Linha 67: Linha 72:
 <code rsplus> <code rsplus>
 par(mar = c(4, 4, 2, 2), cex.lab = 1.5, cex.axis = 1.5, las = 1, bty = "​n"​) par(mar = c(4, 4, 2, 2), cex.lab = 1.5, cex.axis = 1.5, las = 1, bty = "​n"​)
-plot(x1, y1, type = "​n",​ axes = FALSE, ann = FALSE, ylim = range(y1), xlim = range(x1))+plot(x1, y1, type = "​n",​ axes = FALSE, ann = FALSE, ylim = range(y1), xlim = range(x1))
 rect(par()$usr[1],​ par()$usr[3],​ par()$usr[2],​ par()$usr[4], ​ col = rgb(0, 0, 0, 0.15)) rect(par()$usr[1],​ par()$usr[3],​ par()$usr[2],​ par()$usr[4], ​ col = rgb(0, 0, 0, 0.15))
 axis(1) axis(1)
Linha 74: Linha 79:
 mtext(text = "​Variável resposta (y1)", side = 2, line = 3, cex = 1.5, las =0) mtext(text = "​Variável resposta (y1)", side = 2, line = 3, cex = 1.5, las =0)
 cores <- c(rgb(1, 0, 0, 0.3), rgb(0, 0, 1, 0.3)) cores <- c(rgb(1, 0, 0, 0.3), rgb(0, 0, 1, 0.3))
-points(x, y0, pch = 16, cex = 0.8, col = cores[1] ) +points(x1, y0, pch = 16, cex = 0.8, col = cores[1] ) 
-points(x, y1, pch = 19, col = cores[2])+points(x1, y1, pch = 19, col = cores[2])
 legend("​bottomright",​ legend = c("y0 = 10.3 + 0.12 x1", "y1 = y0 + N(0, 5)"), bty = "​n",​ col = cores, pch = 19) legend("​bottomright",​ legend = c("y0 = 10.3 + 0.12 x1", "y1 = y0 + N(0, 5)"), bty = "​n",​ col = cores, pch = 19)
 </​code>​ </​code>​
Linha 84: Linha 89:
  
 ==== Estimando os parâmetros ==== ==== Estimando os parâmetros ====
 +
 +{{:​02_tutoriais:​tutorial7:​convAxisLeg.png?​600 ​ |}}
  
 Os valores em ''​x1''​ e ''​y1'',​ a partir desse ponto, são os dados, provenientes de uma amostra aleatória de ''​y1''​ e de sua relação determinística com ''​x1''​. Vamos esquecer que geramos os dados. Vamos partir do ponto que temos os dados coletados e precisamos fazer as inferências relacionadas à relação ''​y1 ~ x1''​. ​ Os valores em ''​x1''​ e ''​y1'',​ a partir desse ponto, são os dados, provenientes de uma amostra aleatória de ''​y1''​ e de sua relação determinística com ''​x1''​. Vamos esquecer que geramos os dados. Vamos partir do ponto que temos os dados coletados e precisamos fazer as inferências relacionadas à relação ''​y1 ~ x1''​. ​
Linha 119: Linha 126:
  
 Agora, precisamos encontrar entre as muitas possibilidades de inclinação,​ aquela que <wrap em>​minimiza</​wrap>​ o valor de soma dos desvios quadráticos. ​ Agora, precisamos encontrar entre as muitas possibilidades de inclinação,​ aquela que <wrap em>​minimiza</​wrap>​ o valor de soma dos desvios quadráticos. ​
-Por sorte já sabemos fazer iterações e gráficos no R! Vamos utilizar o gráfico anterior como base e fazer muitos gráficos com diferentes inclinações e ao mesmo tempo calcular a soma dos desvios ao quadrado.+Por sorte já sabemos fazer iterações e gráficos no R! Vamos utilizar o gráfico anterior como base e fazer muitos gráficos com diferentes inclinações e ao mesmo tempo calcular a soma dos desvios ao quadrado. ​Antes vamos calcular os valores para diferentes inclinações:​ 
 + 
 +<code rsplus>​ 
 +bsim <- seq(-0.05, 0.29, 0.005) 
 +asim <- ym - bsim * xm 
 +nsim <- length(bsim) 
 +ML <- rep(NA, nsim) 
 +MQ <- rep(NA, nsim) 
 +for (i in 1:nsim) 
 +
 +    spred <- asim[i] +  bsim[i] * x1 
 +    MQ[i] <- sum((spred - y1)^2) 
 +    ML[i] <-  prod(dnorm(y1,​ mean = spred, sd = 5, log = FALSE)) 
 +
 +estima <- data.frame(alfa = asim, beta = bsim, ML = ML, MQ = MQ, logML = log10(ML)) 
 +</​code>​ 
 + 
 +Acima, criamos uma sequencia de valores para representar diferentes inclinações ''​bsim'',​ estimamos o intercepto, ''​asim'',​ a partir dessas inclinações. Em seguinda utilizamos esses coeficientes para calcular o valor de soma quadrática,​ ''​MQ'',​ e verossimilhança,​ ''​ML''​.  
 + 
 Abaixo um gráfico animado. A única função que ainda não conhecemos é ''​Sys.sleep''​((Consulte a documentação!)),​ que é uma forma de fazer o R dar um cochilada durante os ciclos, sem isso não seria possível ver os quadros.  ​ Abaixo um gráfico animado. A única função que ainda não conhecemos é ''​Sys.sleep''​((Consulte a documentação!)),​ que é uma forma de fazer o R dar um cochilada durante os ciclos, sem isso não seria possível ver os quadros.  ​
  
Linha 289: Linha 315:
  
   *1. Cria valores aleatórios de uma normal com média zero e desvio padrão igual a 5;   *1. Cria valores aleatórios de uma normal com média zero e desvio padrão igual a 5;
-  *2. Somo esses valores ao valor ''​y0 '',​ proveniente da relação ''​y ~ x''​ da população e cria os dados ''​ySim''; ​+  *2. Soma esses valores ao valor ''​y0 '',​ proveniente da relação ''​y ~ x''​ da população e cria os dados ''​ySim''; ​
   *3. Cria o modelo com o ''​ySim ~ x1'';​   *3. Cria o modelo com o ''​ySim ~ x1'';​
   *4. Guarda os coeficientes do modelo em ''​cSim'';​   *4. Guarda os coeficientes do modelo em ''​cSim'';​
Linha 403: Linha 429:
 ===== Tabela de Anova de uma Regressão ===== ===== Tabela de Anova de uma Regressão =====
  
-<WRAP center round box 60%>+<WRAP center round box 100%> 
 +<WRAP center round tip 80%> 
 +Video na disciplina de Princípios de Planejamento e Análise de Dados. Desconsidere qualquer referência à disciplina. O tema tratado é a partição de variação dos dados. ​
 {{youtube>​C4urUFRGDvo}} {{youtube>​C4urUFRGDvo}}
 +
 +</​WRAP>​
 </​WRAP>​ </​WRAP>​
  
Linha 762: Linha 792:
 legend("​bottomright",​ legend = c("​arenoso",​ "​argiloso",​ "​humico"​),​ pch = 15:17 ,col = cols, title = "​Solos",​ bty = "​n"​) legend("​bottomright",​ legend = c("​arenoso",​ "​argiloso",​ "​humico"​),​ pch = 15:17 ,col = cols, title = "​Solos",​ bty = "​n"​)
 </​code>​ </​code>​
 +
 +<WRAP center round box 80%>
 +{{  :​02_tutoriais:​tutorial6b:​resdSolo.png?​600 ​ |}}
 +</​WRAP>​
 +
  
 Nessa representação,​ o modelo é representado pelas três linhas horizontais,​ que representam as médias de cada tipo de solo, que calculamos acima no objeto ''​mSolos''​. Então os coeficientes são as estimativas da produtividade média dos solos? Quase isso! Nessa representação,​ o modelo é representado pelas três linhas horizontais,​ que representam as médias de cada tipo de solo, que calculamos acima no objeto ''​mSolos''​. Então os coeficientes são as estimativas da produtividade média dos solos? Quase isso!
Linha 780: Linha 815:
 </​code>​ </​code>​
  
-Vamos demonstrar o que acontece dentro do modelofazendo a transformação de variável indicadora, antes de criar o modelo. A partir da variável solocriamos duas outras, ''​arg''​ e ''​hum'',​ que indicam ​qual a qual solo pertence cada observação. As variáveis indicadoras tem ''​1''​ se a observação pertence ao solo em questão ou ''​0''​ caso pertença a outro tipo de solo:+Vamos demonstrar o que acontece dentro do modelo fazendo a transformação de variável indicadora, antes de criar o modelo. A partir da variável solo criamos duas outras, ''​arg''​ e ''​hum'',​ que indicam qual solo pertence cada observação. As variáveis indicadoras tem ''​1''​se a observação pertence ao solo em questãoou ''​0''​caso pertença a outro tipo de solo:
  
 <code rsplus> <code rsplus>
Linha 801: Linha 836:
 </​code>​ </​code>​
  
 +Reconheça o resultado idêntico dos modelos, ​ veja o que acontece se comparamos os modelos por ''​anova'':​
 +
 +<code rsplus>
 +anova(lmcultInd,​ lmcult)
 +</​code>​
 +
 +<WRAP center round box 90%>
 +**__O que devo ter entendido até aqui:__**
 +<WRAP center round tip 100%>
 +
 +  * 1. Todos os valores apresentados no ''​summary''​ de um modelo.
 +  * 2. A partição da variação no ''​lm''​.
 +  * 3. O que a ''​anova''​ apresenta ao comparar dois modelos.
 +  * 4. Como as variáveis categóricas são tratadas nos modelos no ''​lm''​.
 +</​WRAP>​
 +
 +São muitos conceitos não triviais. Em um primeiro momento, busque alguma compreensão,​ mesmo que ainda pareça nebuloso.
 +
 +</​WRAP>​
  
  
02_tutoriais/tutorial7/start.txt · Última modificação: 2023/09/11 15:58 (edição externa)