Questão de Estatística — Programação Linear — FCC 2022
Estatística›Programação Linear
Código
fc064469
Banca
FCC
Órgão
TRT - 17ª Região (ES)
Ano
2022
Cargo
Analista Judiciário - Área Apoio Especializado - Especialidade Estatística
Atenção: Para responder à questão, considere o código na linguagem R.
Y<-c(2,3,2,4,3,5,6,3,4) #1
X1<-c(10,13,9,18,12,22,27,13,21) #2
X2<-c(6,10,4,10,10,17,16,9,13) #3
dados<-data.frame(cbind(Y,X1,X2)) #4
modelo <- lm(Y ~ X1 + X2, data = dados) #5
summary(modelo) #6
coef(modelo) #7
formula(modelo) #8
plot(modelo) #9
p <- as.data.frame(cbind(13,4)) #10
colnames(p) <- cbind("X1","X2") #11
predict(modelo, newdata=p) #12
vcov(modelo) #13
Intercept<-rep(1,times=9) #14
X<-cbind(Intercept,X1,X2) #15
t(solve(t(X)%*%X)%*%t(X)%*%Y) #16
residuals(modelo) #17
É correto afirmar que
Ao comando da linha 6 calcula o somatório dos valores de Y, X1 e X2, gerando um vetor com esses três valores.
Bo comando da linha 9 gera um único gráfico de dispersão em 3 dimensões representando os pontos (Y, X1, X2).
Co comando da linha 4 realiza o cálculo matricial Y(X1)T (X2) , onde (X1)T é a transposta de X1.
Dos comandos das linhas 10 a 12 calculam, baseado no modelo de regressão linear denominado “modelo”, uma previsão para o valor de Y com os valores X1 = 13 e X2 = 4.
Eo comando da linha 7 obtém o valor do coeficiente de determinação (R²) do modelo de regressão linear ajustado.
Revelar gabarito e comentário▾
GabaritoD — os comandos das linhas 10 a 12 calculam, baseado no modelo de regressão linear denominado “modelo”, uma previsão para o valor de Y com os valores X1 = 13 e X2 = 4.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Comandos do R para regressão linear múltipla
Gabarito: letra D. As linhas 10 a 12 criam um data frame com os valores X1 = 13 e X2 = 4 e, em seguida, usam a função predict() sobre o modelo ajustado na linha 5 para calcular o valor previsto de Y. As demais alternativas descrevem incorretamente as funções summary(), plot(), data.frame() e coef().
A questão testa o conhecimento prático das funções básicas do R para análise de regressão linear. Vamos entender o que cada linha do código faz:
Linha 5: modelo <- lm(Y ~ X1 + X2, data = dados) — ajusta um modelo de regressão linear múltipla, onde Y é a variável dependente e X1, X2 são as variáveis independentes. O objeto modelo armazena todos os resultados do ajuste.
Linha 6: summary(modelo) — exibe um resumo detalhado do modelo, incluindo os coeficientes estimados, seus erros padrão, estatísticas t, p-valores, o R², o R² ajustado, a estatística F, entre outros.
Linha 7: coef(modelo) — extrai apenas o vetor de coeficientes estimados (o intercepto e os coeficientes angulares).
Linha 8: formula(modelo) — retorna a fórmula do modelo, ou seja, Y ~ X1 + X2.
Linha 9: plot(modelo) — gera um conjunto de gráficos de diagnóstico do modelo (resíduos vs. ajustados, Q-Q plot, etc.), não um gráfico 3D.
Linhas 10 a 12: criam um novo data frame com os valores preditores e usam predict() para obter a previsão de Y.
Linha 13: vcov(modelo) — retorna a matriz de covariância dos coeficientes.
Linhas 14 a 16: realizam o cálculo matricial dos coeficientes por mínimos quadrados ordinários, equivalente a coef(modelo).
Linha 17: residuals(modelo) — extrai os resíduos do modelo.
A alternativa correta é a D, pois descreve exatamente o que as linhas 10 a 12 fazem.
Regressão linear múltipla — só Funções corretas: predict(); só Funções incorretas: summary(), coef(), plot(); Funções corretas∩Funções incorretas: lm()
Alternativa A — ❌ Incorreta
A linha 6 (summary(modelo)) não calcula somatórios de Y, X1 e X2. Ela exibe um resumo estatístico completo do modelo ajustado, incluindo coeficientes, erros padrão, R², estatística F, entre outros. O somatório dos valores de Y, X1 e X2 seria obtido com sum(Y), sum(X1) e sum(X2), não com summary(). A alternativa confunde a função summary() com sum().
Alternativa B — ❌ Incorreta
A linha 9 (plot(modelo)) não gera um gráfico de dispersão 3D. Ela produz uma série de gráficos de diagnóstico do modelo de regressão, como resíduos vs. valores ajustados, Q-Q plot dos resíduos, entre outros. Para um gráfico 3D, seria necessário usar pacotes como scatterplot3d ou rgl. A alternativa descreve incorretamente a função plot() aplicada a um objeto lm.
Alternativa C — ❌ Incorreta
A linha 4 (dados <- data.frame(cbind(Y, X1, X2))) não realiza nenhum cálculo matricial. Ela simplesmente combina os vetores Y, X1 e X2 em um data frame, que é uma estrutura de dados tabular. A alternativa inventa uma operação matricial que não ocorre. O cálculo matricial de mínimos quadrados é feito nas linhas 14 a 16, não na linha 4.
Alternativa D — ✅ Correta ⟵ GABARITO
As linhas 10 a 12 fazem exatamente o que a alternativa descreve:
Linha 10: p <- as.data.frame(cbind(13,4)) — cria um data frame com os valores 13 e 4.
Linha 11: colnames(p) <- cbind("X1","X2") — nomeia as colunas como X1 e X2.
Linha 12: predict(modelo, newdata=p) — usa o modelo ajustado para prever o valor de Y para X1 = 13 e X2 = 4.
Portanto, a alternativa está correta.
Alternativa E — ❌ Incorreta
A linha 7 (coef(modelo)) não obtém o R². Ela extrai apenas os coeficientes estimados do modelo (intercepto e inclinações). O R² é obtido com summary(modelo)$r.squared ou diretamente no resumo da linha 6. A alternativa confunde coef() com a extração do R².
NÃO CAIA NESSA!
A banca explora a confusão entre funções com nomes parecidos: summary() vs. sum(), coef() vs. R². Lembre-se: summary() dá o resumo completo (incluindo R²), coef() dá só os coeficientes, e predict() faz previsões.
PEGA ESSA DICA!
Para questões de R, decore as funções principais: lm() ajusta, summary() resume, coef() extrai coeficientes, predict() prevê, residuals() extrai resíduos, vcov() dá a matriz de covariância. Saber o que cada uma retorna é a chave para acertar.