在本文中,我们将讨论如何将因子类转换为 R 编程语言中的字符类。
方法一:将单因子向量转换为字符向量
要将单个因子向量转换为字符向量,我们使用 R 语言的 as.character() 函数并将所需的因子向量作为参数传递。
用法:
character_vector <- as.character( Factor_vector )
例:
在此示例中,我们使用 as.character() 函数将因子向量转换为字符向量。
R
# create factor vector
Input <- factor(c("Geeks", "for", "Geek"))
# print input factor vector and its class
print("Input vector:")
Input
print("Input Data Class:")
class(Input)
# Convert factor vector to character vector
Output <- as.character(Input)
# print Output character vector and its class
print("Output vector:")
Output
print("Output Data Class:")
class(Output)输出:
Input vector: Geeks for Geek Input Data Class: factor Output vector: "Geeks" "for" "Geek" Output Data Class: character
方法2:将因子向量列转换为 DataFrame 中的字符向量列
要将已知因子向量转换为字符向量,我们创建输入数据帧的副本。然后使用R语言的as.character()函数,将 DataFrame 所需的因子向量列作为参数传入。
用法:
Output$factor_vector_column <- as.character( Output$factor_vector_column )
例:
在此示例中,我们使用 as.character() 函数将因子向量列转换为字符向量列。
R
# create factor vector
x <- factor(c("Geeks", "for", "Geek"))
y <- c(1,2,3)
Input <- data.frame( x, y )
# print input factor vector and its data Class
print("Input vector:")
Input
print("Input Data Class:")
class(Input$x)
# Convert factor vector to character vector
Output <- Input
Output$x <- as.character(Input$x)
# print Output character vector and its Class
print("Output vector:")
Output
print("Output Data Class:")
class(Output$x)输出:
Input vector:
x y
1 Geeks 1
2 for 2
3 Geek 3
Input Data Class:
factor
Output vector:
x y
1 Geeks 1
2 for 2
3 Geek 3
Output Data Class:
character方法 3:将因子向量列转换为列未知的 DataFrame 中的字符向量列
要将已知因子向量转换为字符向量,我们创建输入数据帧的副本。然后使用 is.factor() 条件语句查找具有数据类因子的列。然后使用R语言的as.character()函数,将 DataFrame 识别的因子向量列作为参数传入。
用法:
factor_columns <- sapply(Output, is.factor) Output[factor_columns] <- lapply(Output[factor_columns], as.character)
例:
在这里,在这个例子中,我们使用由 is.factor() 条件语句标识的 as.character() 函数将所有因子向量列转换为字符向量列。
R
# create Input dataframe
x <- factor(c("Geeks", "for", "Geek"))
y <- c(1,2,3)
z <- factor(c("Complete", "Interview", "Preparation"))
Input <- data.frame( x, y, z )
# print input data frame and its data Class
print("Input dataframe:")
Input
print("Input Data Class:")
sapply(Input, class)
#Convert factor vector to character vector
Output <- Input
factor_columns <- sapply(Output, is.factor)
Output[factor_columns] <- lapply(Output[factor_columns], as.character)
# print Output character vector and its Class
print("Output dataframe:")
Output
print("Output Data Class:")
sapply(Output, class)输出:
Input dataframe:
x y z
1 Geeks 1 Complete
2 for 2 Interview
3 Geek 3 Preparation
Input Data Class:
x y z
"factor" "numeric" "factor"
Output dataframe:
x y z
1 Geeks 1 Complete
2 for 2 Interview
3 Geek 3 Preparation
Output Data Class:
x y z
"character" "numeric" "character" 方法4:将Data frame的所有列转换为字符
要将 DataFrame 的所有列转换为字符,我们使用带有 as.character 参数的 apply() 函数。 lapply() 函数将给定函数应用于提供的数据帧。
用法:
dataframe <- lapply(dataframe, as.character)
例:
在此示例中,我们使用 as.character 函数使用 lapply() 函数将数据帧的所有列转换为字符向量列。
R
# create Input dataframe
x <- c("Geeks", "for", "Geek")
y <- c(1,2,3)
z <- factor(c("Complete", "Interview", "Preparation"))
df <- data.frame( x, y, z )
# print input data frame and its data Class
print("Input dataframe:")
df
print("Input Data Class:")
sapply(df, class)
#Convert all columns of data frame to character vector
df <- lapply(df, as.character)
# print Output character vector and its Class
print("Output dataframe:")
df
print("Output Data Class:")
sapply(df, class)输出:
Input dataframe:
x y z
1 Geeks 1 Complete
2 for 2 Interview
3 Geek 3 Preparation
Input Data Class:
x y z
"character" "numeric" "factor"
Output dataframe:
$x
[1] "Geeks" "for" "Geek"
$y
[1] "1" "2" "3"
$z
[1] "Complete" "Interview" "Preparation"
Output Data Class:
x y z
"character" "character" "character" 相关用法
- R语言 as.factor()用法及代码示例
- R语言 as.ordered()用法及代码示例
- R语言 is.factor()用法及代码示例
- R语言 is.ordered()用法及代码示例
- R Character转Factor用法及代码示例
- R语言 as.character()用法及代码示例
- R语言 is.character()用法及代码示例
- R语言 is.character()用法及代码示例
- R语言 levels()用法及代码示例
- R语言 recode_factor()用法及代码示例
- R语言 factanal()用法及代码示例
- R语言 droplevels()用法及代码示例
- R语言 nlevels()用法及代码示例
注:本文由纯净天空筛选整理自mishrapriyank17大神的英文原创作品 How to Convert Factor to Character in R?。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
