如何在 r 中将字符转换为因子(附示例)


我们可以使用以下语法将字符向量转换为 R 中的因子向量:

 factor_vector <- as. factor (character_vector)

本教程提供了该功能实际使用的几个示例。

示例 1:将字符向量转换为因子

以下代码显示如何将字符向量转换为因子向量:

 #create character vector
character_vector <- c('First', 'Second', 'Third')

#convert character vector to factor vector
factor_vector <- as. factor (character_vector)

#view factor vector
factor_vector

[1] First Second Third 
Levels: First Second Third

#confirm class of factor vector
class(factor_vector)

[1] “factor”

示例 2:将字符列转换为因子

以下代码显示如何将字符数据框中的特定列转换为因子:

 #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 factor
df$a <- as. factor (df$a)

#view new data frame
df

       ab
1 First 28
2 Seconds 34
3 Third 40

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

[1] “factor”

示例 3:将多列从字符转换为因子

以下代码显示如何将字符数据框中的所有字符列转换为因子:

 #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" 

#convert all character columns to factor
df <- as. data . frame (unclass(df), stringsAsFactors = TRUE )

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

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

此代码对数据框列进行了以下更改:

  • A栏:从角色到邮递员
  • b 列:从特征到因素
  • c 列:不变(因为它已经是一个因素)
  • d 列:未更改(因为它是数字)

使用apply()sapply()函数,我们能够仅将字符列转换为因子列,并保持所有其他列不变。

其他资源

R中如何将因子转换为字符
如何在R中将字符转换为数字
如何在 R 中将字符串转换为日期

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注