我正在尝试编写一个可以应用于数据帧的循环。循环基本上会检查数据框中的每个变量并告诉我哪个变量是一个因素。
一个例子:
test1<-c("red","red","blue","yellow")
test1<-as.factor(test1)
test2<-c(1,2,3,4)
variable<-c("test1","test2")
count<-2
for (i in 1:count)
{
if (is.factor(paste(variable[i]))==TRUE)
{
print("This is a factor")
}
}
test1 变量应该是一个因素,因此应该打印句子“This is a factor”。然而什么也没有发生。我想知道为什么?
最佳答案
这是一个评估问题。字符数组“test1”或“test2”不是因子。
> is.factor(get(variable[1]))
[1] TRUE
> is.factor(get(variable[2]))
[1] FALSE
关于R检查变量是否是一个因素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25191923/