运行循环以生成在R中间歇性递增的值

运行循环以生成在R中间歇性递增的值,r,loops,R,Loops,我正在尝试为连续性标记序列。 这些值已排序。现在,如果Tdiff中的值=400,它将成为新序列的一部分,例如“n+1” 排成一排是巨大的。。。2950万。我正在尝试下面的代码: init<-1 data$seq<-rep(0,29563983) for(i in 1:29563983) { if (data$Tdiff[i]<400) { data$seq[i]<-init

我正在尝试为连续性标记序列。 这些值已排序。现在,如果Tdiff中的值=400,它将成为新序列的一部分,例如“n+1”

排成一排是巨大的。。。2950万。我正在尝试下面的代码:

    init<-1
    data$seq<-rep(0,29563983)
    for(i in 1:29563983)
    {
        if (data$Tdiff[i]<400)
        {
            data$seq[i]<-init
        } else {
           init<-init+1
           data$seq[i]<-init
        }
    }

init这是否符合您的要求

data$seq = cumsum(data$Tdiff >= 400)+1;

这是你想要的吗

data$seq = cumsum(data$Tdiff >= 400)+1;

`根据OP的方法,+1`可以是`+init`。亲爱的@user2977721,如果你喜欢,本网站习惯于向上投票并接受答案。`+1`可以是`+init`,根据OP的方法。亲爱的@user2977721,如果你喜欢,本网站习惯于向上投票并接受答案。