R 是否有一个从水平指数的数字向量创建因子的线性关系?
我经常不得不使用一组指标向量,并希望从中创建一个因子,以便更轻松地探索数据。我总是通过实例化因子,然后将级别分配给它,其中组指标是级别的索引(下面可能更容易看到)。但是,考虑到因子是我最不了解的数据类型,我想知道是否有一个简单的函数可以为我完成这一切,我不知道R 是否有一个从水平指数的数字向量创建因子的线性关系?,r,R,我经常不得不使用一组指标向量,并希望从中创建一个因子,以便更轻松地探索数据。我总是通过实例化因子,然后将级别分配给它,其中组指标是级别的索引(下面可能更容易看到)。但是,考虑到因子是我最不了解的数据类型,我想知道是否有一个简单的函数可以为我完成这一切,我不知道 # set seed so we're all on the same page set.seed(1337) # create the contrived vector of indices myNumbers <- sample
# set seed so we're all on the same page
set.seed(1337)
# create the contrived vector of indices
myNumbers <- sample(x = 1:26, size = 50, replace = TRUE)
# This is how I would create the factor
myFactor <- factor(myNumbers) # step 1
levels(myFactor) <- letters # step 2
# Inspect the result
myFactor
#设定种子,让我们都在同一页上
种子集(1337)
#创建人为的索引向量
myNumbers从向量创建因子时,可以指定级别
foo = factor(x = letters[myNumbers], levels = letters)
length(levels(foo))
#[1] 26
如果您在创建因子
时未指定级别
,则将根据向量
length(levels(myFactor)) #before step 2
#[1] 21
这意味着,在步骤2之前,myFactor
中因子的数值范围为1到21(range(as.numeric(myFactor))
)。因此,即使您打算使用1:26
中的索引,您也将使用1:21
中的索引。这是显而易见的。非常感谢。