Como preparar os dados em R regressão 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. Tipo na função para encontrar a estrutura dos dados. O comando e sua saída parecido com este:

> Str (automóveis) 'data.frame': 398 obs. de 9: $ variáveis ​​V1: Nm 15 18 16 18 17 15 14 14 14 15 ... $ V2: int 8 8 8 8 8 8 8 8 8 8 $ ... V3: 350 318 Nm 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 "Brougham embaixador amc" , ..:
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 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 em falta.

  • 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ê pode ter derivado da origem do nome do carro atributo.

Para mudar o nome do tipo colunas no código a seguir:

> COLNAMES (automóveis) lt; - 
c ( "mpg", "cilindros", "deslocamento", "potência", "peso", "aceleração", "modelYear", "origem",
"CarName")

Em seguida, altere o tipo de dados cavalo-vapor para numérico com o seguinte código:

> 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. Houve alguns valores em falta que foram representados como a # 147 -? # 148- personagem. 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 o seguinte:

> Autos $ cavalos de potência [is.na (autos $ cavalos de potência)] lt; - média (autos $ cavalos de potência, na.rm = TRUE)

É importante ter na.rm-VERDADEIRO no significar função. Ele diz que 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 para factores. Três atributos foram identificados como discreta. Os seguintes três linhas de código alterar os atributos.

> Autos $ origem lt; - fatores (autos $ origem)> autos $ modelYear cilindros fatores (autos $ modelYear)> autos $ -; lt lt; - fatores (autos cilindros $)

Finalmente, remover o atributo do quadro de dados com esta linha de código:

> Autos $ carName lt; - NULL

Neste ponto, você terminar de preparar os dados para o processo de modelagem. O que se segue é uma visão da estrutura após o processo de preparação de dados:

> 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: num 307 350 318 304 302 429 454 440 455 390 ... $ cavalos de potência: num 130 165 150 150 140 198 220 215 225 190 ... $ weight: 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 de "1", "2", "3":
1 1 1 1 1 1 1 1 1 1 ...

menu