Como converter um fator na r

Video: [Estudo de Caso] Conversão Aposentadoria Comum em Especial | Koetz Advocacia

Às vezes você precisa converter explicitamente fatores de texto ou números. Para fazer isso, você usa as funções as.character () ou as.numeric (). Primeiro, converter seu instruções vetor em um fator chamado directions.factor (Como você viu anteriormente):

gt; instruções lt; - c ("Norte", "Leste", "Sul", "Sul") Gt; directions.factor lt; - fator (instruções) gt; directions.factor [1] norte-sudeste SouthLevels: East North South

Usar as.character () para converter um fator a um vetor de caracteres:

gt; as.character (directions.factor) [1] "Norte" "Leste" "Sul" "Sul"

Usar as.numeric () para converter um fator a um vetor numérico. Note que isto irá retornar os códigos numéricos que correspondem aos níveis de fator. Por exemplo, "Leste" corresponde a 1, "Norte" corresponde a 2, e assim por diante:

gt; as.numeric (directions.factor) [1] 1 2 3 3

Tenha muito cuidado quando você converte fatores com níveis numéricos para um vetor numérico. Os resultados podem não ser o que você espera.

Por exemplo, imagine que você tem um vetor que indica alguns resultados de pontuação de teste com os valores c (9, 8, 10, 8, 9), que você converte em um fator:

gt; números lt; - fator (C (9, 8, 10, 8, 9))

A olhar para a representação interna de números, usar str ():

Video: Conversão de dólar em real pela taxa de câmbio vigente entre as moedas norte-americana e brasileira

gt; str (números) Factor de w / 3 níveis "8","9","10": 2 1 3 1 2


Isso indica que R armazena os valores como c (2, 1, 3, 1, 2) com níveis associados de c ( “8”, “9”, “10”).

Se você deseja converter números a um vector de caracteres, os resultados são praticamente como seria de esperar:

gt; as.character (números) [1] "9" "8" "10" "8" "9"

No entanto, se você simplesmente usar Como. numérico(), seu resultado é um vetor das representações de nível internos de seu fator e não os valores originais:

Video: Computar nova variavel no R Commander L2 ex 3_p2

gt; as.numeric (números) [1] 1 2 3 1 2

O R ajuda a ?fator descreve uma solução para este problema. A solução é para indexar os níveis do próprio factor de, e, em seguida, para converter a numérico:

gt; as.numeric (as.character (números)) [1] 8 9 10 8 9

Este é um exemplo de funções aninhadas em R, em que você passar os resultados de uma função para uma segunda função. funções aninhadas são um pouco como as bonecas russas, onde cada brinquedo é dentro do seguinte:

Video: How to Convert Recipes Using a Conversion Factor | Easy Cooking Tips

  • A função interior, as.character (números), contém o texto c ( “8”, “9”, “10”).

  • A função exterior, as.numeric (...), faz a conversão final de c (9, 8, 10, 8, 9).


Publicações relacionadas