为什么 c(...)
在下面的示例中返回数字而不是字符串?
> Location$NamePrint
[1] Burundi
273 Levels: Afghanistan Africa ...
> ParentLocation$NamePrint
[1] Eastern Africa
273 Levels: Afghanistan Africa ...
> c(Location$NamePrint, ParentLocation$NamePrint)
[1] 36 71
这些数字是琴弦在关卡中的位置?
我的目标是使用
c(Location$NamePrint, ParentLocation$NamePrint)
创建一个包含这两个元素(它们的字符串值)的向量 最佳答案
因为它是一个 factor
。例如:
x <- as.factor("a")
c(x)
# [1] 1
为了解决这个问题,我们可以处理
x
as.character
:x <- as.character("a")
c(x)
# [1] "a"
正如@joran 提到的,在
forcats
中也有一个方便的函数 forcats::fct_c()
。请参阅
?c
并阅读详细信息部分以获取更多信息:x <- as.factor("a")
y <- as.factor("b")
c.factor <- function(..., recursive=TRUE) unlist(list(...), recursive=recursive)
c.factor(x, y)
# [1] a b
# Levels: a b
关于R 返回数字而不是字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49947213/