Como explicar os resultados analíticos Predictive de R Regressão

Uma vez que você criar um modelo de regressão R para análise preditiva, você quer ser capaz de explicar os resultados da análise. Para ver algumas informações úteis sobre o modelo, digite o seguinte código:

> Resumo (modelo)

A saída fornece informações que você pode explorar se você quiser ajustar o seu modelo mais. Por agora, vamos deixar o modelo como ele é. Aqui estão as duas últimas linhas da saída:

Múltiplo ao quadrado-R: 0,8741, ajustado-R ao quadrado: 0.8633F-estatística: 80.82, em 22 e 256 DF, p-value: lt; 2.2e-16

Um par de pontos de dados se destacam aqui:

  • o R-quadrado múltiplo valor informa o quão bem a linha de regressão ajusta aos dados (bondade de ajuste). Um valor de 1 significa que é um ajuste perfeito. Assim, uma r-quadrado valor de 0,874 é bom- diz que 87,4 por cento da variabilidade mpg é explicada pelo modelo.

  • o p-valor diz-lhe como significativas as variáveis ​​de previsão afetam a variável de resposta. UMA p-valor inferior a (tipicamente) de 0,05 significa que você pode rejeitar a hipótese nula de que as variáveis ​​de previsão têm coletivamente nenhum efeito sobre a variável resposta (mpg). o p-valor de 2.2e-16 (isto é, 2,2 a 16 zeros em frente do mesmo) é muito menor do que 0,05, de modo que os preditores ter um efeito sobre a resposta.

Com o modelo criado, você pode fazer previsões contra ela com os dados de teste você tiver particionado a partir do conjunto de dados completo. Para usar este modelo para prever o para cada linha no conjunto de teste, você emitir o seguinte comando:

> previsões lt; - prever (modelo, testSet,
interval = "prever", nível = .95)

Este é o código e de saída dos primeiros seis previsões:

> Cabeça (previsões) lwr ajuste upr2 16,48993 10,530223 22,449644 18,16543 12,204615 24,126255 18,39992 12,402524 24,397326 12,09295 6,023341 18,162577 11,37966 5,186428 17,572898 11,66368 5,527497 17,79985

A saída é uma matriz que mostra os valores previstos no caber coluna e o intervalo de previsão na lwr e UPR colunas - com um nível de confiança de 95 por cento. Quanto maior o nível de confiança, maior é o leque, e vice-versa.

O valor previsto é no meio da gama-mudando assim o nível de confiança não muda o valor previsto. A primeira coluna é o número da linha do conjunto de dados completo.

Para ver o lado valores reais e previstos a lado para que você possa compará-los, você pode digitar as seguintes linhas de código:

> a comparação lt; - cbind (testSet $ ​​mpg, as previsões [, 1])> COLNAMES (comparação) lt; - c ( "real", "previu")

A primeira linha cria uma matriz de duas colunas com os valores reais e previstos. A segunda linha muda os nomes das colunas para real e previsto. Tipo na primeira linha de código para obter a saída dos primeiros seis linhas de comparação, do seguinte modo:

> Cabeça (comparação) predicted2 real 15 16,489934 16 18,165435 17 18,399926 15 12,092957 14 11,379668 14 11,66368

Nós também queremos ver um resumo das duas colunas de comparar os seus meios. Este é o código e de saída do resumo:

> Resumo (comparação) actualpredictedMin. : 10,00 min. : 8.8491st Qu.:16.00 primeira Qu.:17.070Median: 21.50 Median: 22.912Mean: 22.79 Média: 23.0483rd Qu.:28.00 3ª Qu.:29.519Max. : 44.30 Max. : 37,643

Em seguida, você usar o erro percentual absoluto médio (mape), Para medir a precisão do nosso modelo de regressão. A fórmula para o erro médio absoluto por cento é

(# 931- (| Y-Y '| / | Y |) / N) * 100

em que Y é a pontuação real, Y 'é o marcador previsto, e N é o número de contagens preditos. Depois de ligar os valores na fórmula, você receber um erro de apenas 10,94 por cento. Aqui está o código ea saída do console R:

> mape lt; - (soma (abs (comparação [, 1] -Comparação [, 2]) / abs (comparação [, 1])) / nrow (comparação)) * 100> mape [1] 10,93689

O código a seguir permite visualizar os resultados e erros em uma exibição de tabela:

> mapeTable lt; - cbind (comparação, abs (comparação [, 1] - comparação [, 2]) / comparação [1], * 100)> COLNAMES (mapeTable) [3] lt; - "erro absoluto por cento"> cabeça (mapeTable) real previu cento error2 absoluta 15 16,48993 9,9328894 16 18,16543 13,5339525 17 18,39992 8,2348406 15 12,09295 19,3803097 14 11,37966 18,7167088 14 11,66368 16,688031

Aqui está o código que lhe permite ver o erro por cento mais uma vez:

> Sum (mapeTable [, 3]) / nrow (comparação)
[1] 10,93689

menu