Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
TRABALHO1- 1
2 deREGRESSÃO
Janeiro de 2021
LINEAR
Laura JANEIRO
TherezaDE Zaia
2020 Ferro
RA239037
1. MATERIAIS E OBJETIVOS
Os dados utilizados neste trabalho constituem-se de uma amostra aleatória de 1000
estudantes que fizeram a prova do ENEM de 2015, fornecidos pelo Instituto Nacional de
Estudos e Pesquisas Educacionais Anísio Teixeira (INEP), vinculado ao Ministério da
Educação.
Nessa amostra estão disponíveis 16 variáveis: UF (estado de residência do
indivíduo), Idade (em anos), Sexo (F ou M), Cor (PPI - autodeclarados pretos, pardos e
indígenas; Não PPI - autodeclarados brancos ou amarelos), EstadoCivil (Solteiro ou
Outros), NotaCN (nota na prova de Ciências da Natureza), NotaCH (nota na prova de
Ciências Humanas), NotaLC (nota na prova de Linguagens e seus Códigos), NotaMT (nota
na prova de Matemática), InstrPai (nível de instrução do pai - Fundamental, Médio ou
Superior), InstrMae (nível de instrução da mãe - Fundamental, Médio ou Superior),
NPessoas (número de pessoas que moram
na mesma residência), Renda (familiar total, dividida em fatores de salários mínimos),
EscolaEM (tipo de escola do ensino médio) e TurnoEM (turno do ensino médio).
O objetivo deste trabalho é analisar a amostra fornecida e ajustar um modelo de
regressão linear ou polinomial múltipla para predizer a nota de Matemática (NotaMT),
utilizando como potenciais variáveis preditoras todas as demais variáveis presentes no
conjunto.
2. ANÁLISE DESCRITIVA
Figura 2: Diagramas de caixa dos níveis de Renda relacionados a média nas matérias específicas
3. MODELO DE REGRESSÃO
O primeiro modelo de regressão foi feito com todas as variáveis quantitativas e
qualitativas, exceto a coluna UF, que foi considerada desnecessária. No caso do segundo
tipo, para cada K categorias, foram criadas K-1 variáveis dummy. Em especial, no caso da
variável Estado Civil, valores faltantes foram classificados como 0 junto dos demais valores
diferentes de ‘Solteiro’. Dessa forma, o modelo ‘completo’ tinha 21 variáveis e o intercepto
continha a informação de todas as variáveis qualitativas, sendo elas Sexo, Cor, Estado Civil,
Instrução do Pai, Instrução da Mãe, Renda, Escola do Ensino Médio e Turno do Ensino
Médio. O R2 observado foi de 0.462, o que significa que esse modelo consegue explicar
46,2% dos dados.
Considerando então as curvas observadas na parte de gráficos de dispersão entre a
variável resposta NotaMT e as demais variáveis quantitativas da Figura 1, foi feito um
segundo modelo ‘completo’ com quatro variáveis a mais que o anterior, sendo estas as
variáveis NotaCN, NotaCH, NotaLC e NotaRED elevadas ao quadrado, totalizando assim 25
variáveis independentes. Vale também a pena notar que as variáveis do tipo Nota foram
padronizadas subtraindo a média de cada uma, para prevenir a ocorrência de dependência.
Nesse segundo caso, o R2 observado foi de 0.521.
Então, foi iniciado o processo de seleção de variáveis da regressão. Foram usados
métodos automatizados no processo.
Primeiramente foram testados, simultaneamente, os métodos BIC (Critério de
Informação Bayesiano) e Cp de Mallow. No primeiro, quanto menor o valor de BIC, melhor.
Esse método foi escolhido ao invés do método AIC (Critério de Informação de Akaike) por
ter um termo de penalização para o número de parâmetros no modelo mais rigoroso. O
método do Cp de Mallow compara a precisão e o vício do modelo completo a modelos com
um subconjunto de preditores, e procura modelos que tenham o erro quadrático médio
como estimador não-viciado da variância.
Como pode ser visto na Figura 4, ambos os métodos indicam que o melhor modelo
possui 8 variáveis preditoras. Observando a tabela ANOVA do modelo, as 8 podem ser
mantidas (todas têm um valor de F grande o suficiente). Seu R2 foi de 0.5002.
O segundo modelo foi obtido a partir do método Stepwise ‘Forward Selection’, cuja
função retorna o modelo que testa até onde é mais significativo adicionar variáveis ao invés
de usar o modelo vazio. ‘Forward’ indica que o método começou com o modelo vazio e foi
adicionando variáveis até onde foi considerado vantajoso. O modelo obtido pelo método
tinha 14 variáveis, mas observando a tabela ANOVA, foi removida uma variável
(Turno_SomenteDiurno). O R2 do modelo sem nenhuma transformação foi 0.5163.
Para decidir qual era o melhor modelo entre os dois, foi realizado um teste de
análise de variância entre eles. O p-valor obtido foi de 5.214e-06, e concluímos que as
variáveis acrescentadas no modelo do método Stepwise não precisam ser excluídas.
Porém, como a diferença no R2 dos modelos é bastante pequena, foi decidido utilizar o
modelo BIC-CP.
Definido o modelo, foi feita uma análise de resíduos. Para testar a normalidade,
homocedasticidade e independência dos resíduos, foram utilizados, respectivamente, Teste
de Shapiro-Wilks (hipótese nula é: o conjunto tem distribuição normal), Teste de
Breusch-Pagan (hipótese nula é: o conjunto tem variância constante) e Teste de
Durbin-Watson (hipótese nula é:os elementos do conjunto são independentes). Com o
objetivo de normalizar a distribuição dos resíduos e tornar a variância próxima de constante,
foram feitas 2 transformações: log(NotaMT) seguido de uma Transformação de Box-Cox
que indicou um lambda aproximado de -2. O lambda utilizado foi -2.5. A variável resposta
final está na forma: log-2.5(NotaMT).
Figura 5: Gráfico Q-Q Normal dos resíduos do modelo transformado
4. INTERPRETAÇÃO DO MODELO
O modelo final foi planejado com o intuito de ter a maior explicação da variabilidade
dos dados com o menor número de variáveis preditoras possível. O modelo escolhido tem 8
variáveis independentes, sendo 5 quantitativas (numéricas) e 3 qualitativas (que indicam se
a característica indicada pela variável existe - com valor 1 - ou não - com valor 0 - no
candidato). As informações das demais variáveis estão contidas no valor do intercepto β0,
que é o valor que se obtém quando todas as variáveis preditoras são zero). Elas não
estarem no modelo indica que as suas variações não têm influência significativa no valor da
variável resposta Nota de Matemática.
Esse modelo é capaz de explicar 41,02% da variabilidade dos 1000 dados
inicialmente fornecidos. Para obter um modelo mais preciso, seria necessário um conjunto
de dados do ENEM 2015 maior.
Por conta dos dados quantitativos estarem concentrados abaixo da faixa dos 600
pontos, o modelo não é tão bom em predizer notas mais altas. Então, fica concluído que o
modelo é razoavelmente capaz de determinar o valor médio da nota de um candidato do
conjunto de dados estudado.
Como a variável resposta do modelo foi transformada utilizando a função
logarítmica, o aumento/diminuição da nota de matemática a cada unidade acrescentada a
cada variável independente (tendo as outras fixadas) é dada em termos de porcentagem.
Os aumentos ou diminuições percentuais esperados(as) na nota de matemática no caso de
cada variável quantitativa estão escritos na Tabela 2.
Tabela 2: Aumento ou diminuição percentual esperada no valor da variável dependente a cada uma
unidade adicionada à variável independente especificada
Sexo -- 0,8074%
Analisando a Tabela 3, podemos ver que pessoas do sexo feminino têm uma nota
esperada de matemática 0,8074% menor do que candidatos homens. O indivíduo que
estudou apenas em escolas públicas durante o seu ensino médio também sofre uma
penalização: sua nota média de Matemática é 0,8619% menor que os que tiveram o
privilégio de estudar, mesmo que parcialmente, numa escola privada.
É importante lembrar que estes são valores aproximados, tanto pela amostra ser
limitada quanto pelo fato de que o aumento/decréscimo varia junto com a função
exponencial. Esses valores são próximos dos reais para valores medianos das notas de
Ciências da Natureza, Ciências Humanas e Linguagens e Códigos.
Concluindo, podemos dizer que o modelo não explica muito da variabilidade dos
dados, mas que fornece valores condizentes com os dados fornecidos e produz valores
médios aceitáveis para a nota de Matemática baseado na variação das notas das outras
provas específicas e características socioeconômicas dos candidatos.
CÓDIGOS
#SETUP
library(tidyverse)
library(leaps)
library(bestglm)
library(fastDummies)
library(lmtest)
library(car)
library(caret)
library(GGally)
#READ FILE
path = "D:/EXERCICIOS R/ME613"
fname = file.path(path, "dados_239037.csv")
batata = read.csv(fname, sep=";")
#SomentePublica é a que tem menor variação na média das provas e a menor mediana,
mas tem o amior numero de outliers
#STEPWISE both
completo = lm(NotaMT~.,data=weh)
vazio = lm(NotaMT~1,data=weh)
step(vazio, scope=list(upper=completo,lower=vazio), direction = "both", trace = T)
#BIC E CP
modelos <- regsubsets(NotaMT ~ ., data=weh, nbest=5)
plot(modelos, scale="bic")
plot(modelos, scale="Cp")
#MODELO ENCONTRADOS
caret::BoxCoxTrans(log(weh$NotaMT))
#INTERPRETAÇÃO
coef <- as.vector(mod_bic$coefficients)
lin_ratio <- function(x){
(exp(x^(-2/5)))
}
v_esperado = function(x1,x2,x3,x4,x5,x6,x7,x8){
notamt_esp = coef[1] + coef[2]*x1 +coef[3]*x2+coef[4]*x3+coef[5]*x4+
coef[6]*x5+coef[7]*x6+coef[8]*x7+coef[9]*x8
}
#TESTE (B0)
lin_ratio(coef[1]) #parece estar dando certo
#VARIAVEL SEXO
inf_sexo=(lin_ratio(v_esperado(mean(batata$NotaCN),mean(batata$NotaCN)^2,mean(batat
a$NotaCH),mean(batata$NotaLC),mean(batata$NotaLC)^2,1,0,0))/lin_ratio(v_esperado(me
an(batata$NotaCN),mean(batata$NotaCN)^2,mean(batata$NotaCH),mean(batata$NotaLC),
mean(batata$NotaLC)^2,0,0,0)))-1
#VARIAVELCN (POLINOMIAL)
inf_cn=(lin_ratio(v_esperado(mean(batata$NotaCN)+1,(mean(batata$NotaCN)+1)^2,mean(b
atata$NotaCH),mean(batata$NotaLC),mean(batata$NotaLC)^2,0,0,0))/(lin_ratio(v_esperado
(mean(batata$NotaCN),mean(batata$NotaCN)^2,mean(batata$NotaCH),mean(batata$Nota
LC),mean(batata$NotaLC)^2,0,0,0))))-1
#VARIAVELCH (LINEAR)
inf_ch=(lin_ratio(v_esperado(mean(batata$NotaCN),(mean(batata$NotaCN))^2,mean(batata
$NotaCH)+1,mean(batata$NotaLC),mean(batata$NotaLC)^2,0,0,0))/(lin_ratio(v_esperado(m
ean(batata$NotaCN),mean(batata$NotaCN)^2,mean(batata$NotaCH),mean(batata$NotaLC
),mean(batata$NotaLC)^2,0,0,0))))-1
#VARIAVELLC (POLINOMIAL)
inf_lc=(lin_ratio(v_esperado(mean(batata$NotaCN),(mean(batata$NotaCN))^2,mean(batata
$NotaCH),mean(batata$NotaLC)+1,(mean(batata$NotaLC)+1)^2,0,0,0))/(lin_ratio(v_esperad
o(mean(batata$NotaCN),mean(batata$NotaCN)^2,mean(batata$NotaCH),mean(batata$Not
aLC),mean(batata$NotaLC)^2,0,0,0))))-1