Teken naar numeriek converteren in r (met voorbeelden)


We kunnen de volgende syntaxis gebruiken om een karaktervector naar een numerieke vector in R te converteren:

 numeric_vector <- as. numeric (character_vector)

Deze tutorial biedt verschillende voorbeelden van praktisch gebruik van deze functie.

Voorbeeld 1: Converteer een tekenvector naar numeriek

De volgende code laat zien hoe u een tekenvector naar een numerieke vector converteert:

 #create character vector
tanks <- c('12', '14', '19', '22', '26')

#convert character vector to numeric vector
numbers <- as. numeric (tanks)

#view digital vector
numbers

[1] 12 14 19 22 26

#confirm class of numerical vector
class (numbers)

[1] "digital"

Voorbeeld 2: Converteer een tekenkolom naar numeriek

De volgende code laat zien hoe u een specifieke kolom in een dataframe converteert van teken naar numeriek:

 #create data frame
df <- data. frame (a = c('12', '14', '19', '22', '26'),
                 b = c(28, 34, 35, 36, 40))

#convert column 'a' from character to numeric
df$a <- as. numeric (df$a)

#view new data frame
df

   ab
1 12 28
2 14 34
3 19 35
4 22 36
5 26 40

#confirm class of numerical vector
class (df$a)

[1] "digital"

Voorbeeld 3: Converteer meerdere kolommen van tekens naar numeriek

De volgende code laat zien hoe u alle tekenkolommen in een tekengegevensframe naar numeriek converteert:

 #create data frame
df <- data. frame (a = c('12', '14', '19', '22', '26'),
                 b = c('28', '34', '35', '36', '40'),
                 c = as. factor (c(1, 2, 3, 4, 5)),
                 d = c(45, 56, 54, 57, 59))

#display classes of each column
sapply(df, class)

          abcd
"character" "character" "factor" "numeric" 

#identify all character columns
chars <- sapply (df, is. character )

#convert all character columns to numeric
df[, chars] <- as. data . frame ( apply (df[, chars], 2, as.numeric ))

#display classes of each column
sapply (df, class)

        abcd
"numeric" "numeric" "factor" "numeric"

Deze code heeft de volgende wijzigingen aangebracht in de dataframekolommen:

  • Kolom a: Van karakter naar digitaal
  • Kolom b: Van karakter naar digitaal
  • Kolom c: Ongewijzigd (aangezien het een factor was)
  • Kolom d: ongewijzigd (aangezien deze al numeriek was)

Met behulp van de functies apply() en sapply() konden we alleen tekenkolommen naar numerieke kolommen converteren en alle andere kolommen ongewijzigd laten.

Aanvullende bronnen

Hoe numeriek naar teken te converteren in R
Hoe een teken naar een factor in R te converteren
Hoe factor naar karakter te converteren in R
Hoe een teken naar een tijdstempel te converteren in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert