我有数据,我想要分离为一个线性模型分为三个独立的小组。数据范围从0到60。数据的传播方式,我希望0,60,然后其余的中间作为最后一组。我使用了I(as.factor( data )==0)和相同的60来分隔这两种数据,但是如何获得其余的数据。数据的长度是不一样的,因此仅仅将其余的放在另一个对象中就无法工作。
发布于 2019-11-14 21:22:40
也许是这样的。首先,我们必须创建一些数据。我们将其命名为dta,因为data是函数的名称:
dta <- c(25, 60, 60, 59, 60, 0, 19, 0, 0, 60, 60, 0, 22, 0, 59, 60,
0, 0, 60, 0, 60, 57, 10, 60, 55, 0, 60, 45, 3, 0)现在,创建一个变量,该变量以所需的方式对数据进行分组:
grp <- factor(ifelse(dta==0, 1, ifelse(dta==60, 3, 2)))如果你想要的话,你可以变得更有魅力:
grp <- factor(ifelse(dta==0, "0", ifelse(dta==60, "60", "Between")),
levels=c("0", "Between", "60"))
table(grp)
# grp
# 0 Between 60
# 10 10 10 https://stackoverflow.com/questions/58859992
复制相似问题