Comment convertir un facteur en caractère dans R (avec exemples)
Vous pouvez utiliser la syntaxe suivante pour convertir un facteur en caractère dans R :
x <- as.character(x)
Les exemples suivants montrent comment utiliser cette syntaxe dans la pratique.
Exemple 1 : Convertir le facteur vectoriel en caractère
Le code suivant montre comment convertir un vecteur de facteurs en vecteur de caractères :
#create factor vector x <- factor(c('A', 'B', 'C', 'D')) #view class class(x) [1] "factor" #convert factor vector to character x <- as.character(x) #view class class(x) [1] "character"
Exemple 2 : Convertir la colonne du bloc de données en caractère
Le code suivant montre comment convertir une colonne de facteur en caractère dans un bloc de données :
#create data frame
df <- data.frame(name=factor(c('A', 'B', 'C', 'D')),
status=factor(c('Y', 'Y', 'N', 'N')),
income=c(45, 89, 93, 96))
#view class of each column
sapply(df, class)
name status income
"factor" "factor" "numeric"
#convert name column to character
df$name <- as.character(df$name)
#view class of each column
sapply(df, class)
name status income
"character" "factor" "numeric"
Exemple 3 : Convertir toutes les colonnes de facteurs en caractères
Le code suivant montre comment convertir toutes les colonnes de facteurs en caractères dans un bloc de données :
#create data frame
df <- data.frame(name=factor(c('A', 'B', 'C', 'D')),
status=factor(c('Y', 'Y', 'N', 'N')),
income=c(45, 89, 93, 96))
#view class of each column
sapply(df, class)
name status income
"factor" "factor" "numeric"
#convert name column to character
x <- sapply(df, is.factor)
df[x] <- lapply(df[x], as.character)
#view class of each column
sapply(df, class)
name status income
"character" "character" "numeric"
Exemple 4 : Convertir toutes les colonnes du bloc de données en caractères
Le code suivant montre comment convertir chaque colonne en caractère dans un bloc de données :
#create data frame
df <- data.frame(name=factor(c('A', 'B', 'C', 'D')),
status=factor(c('Y', 'Y', 'N', 'N')),
income=c(45, 89, 93, 96))
#view class of each column
sapply(df, class)
name status income
"factor" "factor" "numeric"
#convert all columns to character
df <- lapply(df, as.character)
#view class of each column
sapply(df, class)
name status income
"character" "character" "characer"
Ressources additionnelles
Comment convertir un caractère en numérique dans R
Comment convertir une liste en bloc de données dans R
Comment convertir des chaînes en dates dans R
Comment convertir des nombres en dates dans R