在本文中,我們將討論如何將因子類轉換為 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?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。