for (i in 1:(cutoff_size-1)){
if (work$obs<i){
work$group[i]<-0 }
else { work$group[i]<-1 } }
> work
size event time obs group
1 0.0 1 7.213 1 1
2 0.2 0 103.000 2 0
3 0.3 0 156.000 3 0
20 19.0 1 3.934 73 1
> warnings()
Warning messages:
1: In work$group[i] = rep(c(0, 1), c(i - 1, cutoff_size - ... :
number of items to replace is not a multiple of replacement length
我想制作组[1],组[2],...变量像三角矩阵,但它不起作用。我的for循环R代码只生成一个组变量。
我该如何解决这个问题?
我想让我的数据集如下:
size event time obs group_1 group_2 group_3 group_4 group_5
0 1 7.213 1 1 0 0 0 0
0.2 0 103 2 1 1 0 0 0
0.3 0 156 3 1 1 1 0 0
0.4 0 125 4 1 1 1 1 0
0.5 2 98 5 1 1 1 1 1
答案 0 :(得分:0)
不清楚你想要完成什么。如果您只想要基于阈值的组分离,请使用:
work$group=ifelse(work$obs<cutoff_size,0,1)
work
size event time obs group
1 0.0 1 7.213 1 0
2 0.2 0 103.000 2 0
3 0.3 0 156.000 3 0
20 19.0 1 3.934 73 1