Regressão Linear - Shiny
A regressão linear é um método estatístico que é usado para determinar a relação entre duas variáveis, uma variável dependente (Y) e uma ou mais variáveis independentes (X).
Com base nos dados abaixo construa um grafico de pontos e a reta que representa a regressão linear.
O programa deve também ser capaz de ler um valor e mostrar o valor correspondente a este através da
regressão linear.
Arquivo Carro
Comandos básicos
- plot(VariavelDependente ~ VariavelIndependente, data=dados)
- modelo = lm(VariavelDependente ~ VariavelIndependente, data=dados)
- abline(modelo)
- prev = predict(modelo,data.frame(VariavelIndependente = valor))
Agora vamos fazer este mesmo programa com mais interatividade utilizando o Shiny:
Ao rodar:

Depos de apertar o botão processar

Depois do título teremos 2 linhas. A linha 1 o primeiro componente ocupa 4 colunas e o segundo
componente ocupa 8 colunas. A linha 2 os dois componentes ocupam 6 colunas
Comandos visuais
- fluidRow() - cria uma linha;
- column(Número de colunas,Componentes)
- tableOutput("Dados") - Insere uma tabela de nome dados
- plotOutput("Graf") - Plota um gráfico de nome Graf
- numericInput("nome do componente", "Texto para o usuário:", valor padrão, min = 1, max = 9999999)
- actionButton("Identificador","texto") - botão
- textOutput("NomeDoTexto") - Mostra o texto apos a execução
Comando do lado do servidor
- output$Graf <- renderPlot({
plot(Compra ~ Venda, data=dados)
abline(modelo)
}) - Constroi e vicula o gráfico a variavel Graf
- output$Dados <- renderTable({dataFrame}) - Constroi uma tabela e vincula a variável Dados
- observeEvent(input$NovoDoBotao, {
valr = input$NomeDoComponenteDeEntrada
prev = predict(modelo,data.frame(VariavelIndependente = eval(parse(text = valr))) )
prev = paste0("Preço de compra sugerido R$: ",round(prev,2))
output$Resultado = renderText({prev})
})
Exercícios utilizando o Shiny:
Construa uma aplicação utilizando o Shiny,auto.arima e o
data frama AirPassengers. O auto.arima deve plotar um grafico tentando prever o
comportamento do data frame em uma quantidade de meses a serem previstas.