Como preparar os dados em regressão r para análise preditiva
Você tem que obter os dados em um formulário que o algoritmo pode usar para construir um modelo de análise preditiva. Para fazer isso, você tem que levar algum tempo para entender os dados e conhecer a estrutura dos dados. Digite a função de descobrir a estrutura dos dados. O comando e sua saída parecido com este:
gt; str (automóveis) `data.frame`: 398 obs. de 9: $ variáveis V1: num 15 18 16 18 17 15 14 14 14 15 ... $ V2: int 8 8 8 8 8 8 8 8 8 8 $ ... V3: núm 350 318 304 307 302 429 454 440 455 390 ... $ V4: chr "130,0" "165,0" "150,0" "150,0" ... $ V5: num 3504 3693 3436 3433 3449 ... $ V6: num 12 11,5 11 12 10,5 10 9 8,5 10 8,5 ... $ V7: int 70 70 70 70 70 70 70 70 70 70 ... $ V8: int 1 1 1 1 1 1 1 1 1 1 ... $ V9: Fator w / 305 níveis "amc Brougham embaixador", ..:
37 232 15 50 162 142 55 224 242 2 ...
De olhar para a estrutura, você pode dizer que há alguma preparação de dados e de limpeza para fazer. Aqui está uma lista das tarefas necessárias:
Renomear os nomes das colunas.
Isto não é estritamente necessário, mas para os fins deste exemplo, é melhor usar nomes de coluna você pode entender e lembrar.
Alterar o tipo de dados de V4 (cavalo-vapor) Para uma numérico tipo de dados.
Neste exemplo, cavalo-vapor é um valor numérico contínuo e não um personagem tipo de dados.
Lidar com valores em falta.
Aqui cavalo-vapor tem seis valores ausentes.
Alterar os atributos que têm valores discretos para fatores.
Aqui cilindros, ano modelo, e origem têm valores discretos.
Descartar o V9 (nome do carro) Atributo.
Aqui nome do carro não agrega valor ao modelo que você está criando. Se o origem atributo não foram dadas, você poderia ter obtido a origem do nome do carro atributo.
Para mudar o nome do tipo colunas no código a seguir:
gt; COLNAMES (automóveis) lt; -
c ("mpg","cilindros","deslocamento","cavalo-vapor", "peso","aceleração","ano modelo","origem",
"carName")
Em seguida, altere o tipo de dados cavalo-vapor para numérico com o seguinte código:
gt; autos $ cavalos de potência lt; - as.numeric (autos $ cavalos de potência)
O programa vai reclamar porque nem todos os valores em cavalos eram representações de seqüência de números. Havia alguns valores em falta que foram representados como o caractere “?”. Isso é bom para agora, porque R converte cada instância ? para dentro N / D.
Uma forma comum de lidar com os valores em falta de variáveis contínuas é substituir cada valor em falta com a média de toda a coluna. A seguinte linha de código faz isso:
gt; autos $ cavalos de potência [is.na (autos $ cavalos de potência)] lt; - significativo (automóveis $ cavalos de potência, na.rm = TRUE)
É importante ter na.rm-VERDADEIRO no significar função. Conta a função não usar colunas com valores nulos em seu cálculo. Sem ele, a função retornará.
Em seguida, alterar os atributos com valores discretos de fatores. Três atributos foram identificados como discreta. Os seguintes três linhas de código alterar os atributos.
gt; autos $ origem lt; - fator (autos $ origem) gt; autos $ modelYear lt; - (factor de automóveis $ modelYear) gt; cilindros autos $ lt; - fatores (autos cilindros $)
Finalmente, remover o atributo a partir do quadro de dados com esta linha de código:
gt; autos $ carName lt; - NULL
Neste ponto, você terminou de preparar os dados para o processo de modelagem. O que se segue é uma vista da estrutura após o processo de preparação de dados:
gt; str (automóveis) `data.frame`: 398 obs. de 8 variáveis: $ mpg: num 18 15 18 16 17 15 14 14 14 15 ... $ cilindros: Fator w / 5 níveis "3","4","5","6", ..:
5 5 5 5 5 5 5 5 5 5 ... $ deslocamento: núm 350 318 304 307 302 429 454 440 455 390 ... $ potência: núm 165 150 150 130 140 198 220 215 225 190 ... $ peso: Num 3504 3693 3436 3433 3449. . . $ Aceleração: num 12 11,5 11 12 10,5 10 9 8,5 10 8,5 ... $ modelYear: Fator w / 13 níveis "70","71","72", ..:
1 1 1 1 1 1 1 1 1 1 ... $ origem: Fator w / 3 níveis "1","2","3":
1 1 1 1 1 1 1 1 1 1 ...