在 R 中预定义 table 函数中的因子
Predefine the factors in table function in R
我想预定义 table 函数的级别以使不同数据集的结果具有可比性。假设我想比较 obj1 和 obj2:
obj1 <-c(1,1,1,2,3)
obj2 <- c(1,1,1,2,2)
如果我对它们使用 table 函数,结果会有不同的因素:
> table(obj1)
obj1
1 2 3
3 1 1
> table(obj2)
obj2
1 2
3 2
我尝试预定义级别但没有成功:
table(obj2, deparse.level = 3)
Error in vapply(l[fixup], function(x) switch(deparse.level + 1, "",
if (is.symbol(x)) as.character(x) else "", :
values must be length 1,
but FUN(X[[1]]) result is length 0
有什么想法吗?
现在,您只有数字。如果你制作obj的因子,你可以声明因子水平。
obj1 <- factor(c(1,1,1,2,3), levels=1:3)
obj2 <- factor(c(1,1,1,2,2), levels=1:3)
table(obj1)
obj1
1 2 3
3 1 1
table(obj2)
obj2
1 2 3
3 2 0
我想预定义 table 函数的级别以使不同数据集的结果具有可比性。假设我想比较 obj1 和 obj2:
obj1 <-c(1,1,1,2,3)
obj2 <- c(1,1,1,2,2)
如果我对它们使用 table 函数,结果会有不同的因素:
> table(obj1)
obj1
1 2 3
3 1 1
> table(obj2)
obj2
1 2
3 2
我尝试预定义级别但没有成功:
table(obj2, deparse.level = 3)
Error in vapply(l[fixup], function(x) switch(deparse.level + 1, "", if (is.symbol(x)) as.character(x) else "", : values must be length 1, but FUN(X[[1]]) result is length 0
有什么想法吗?
现在,您只有数字。如果你制作obj的因子,你可以声明因子水平。
obj1 <- factor(c(1,1,1,2,3), levels=1:3)
obj2 <- factor(c(1,1,1,2,2), levels=1:3)
table(obj1)
obj1
1 2 3
3 1 1
table(obj2)
obj2
1 2 3
3 2 0