繁体   English   中英

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

[英]run loop to generate values that increment intermittently in R

我正在尝试标记一个连续的序列。 这些值已经排序。 现在,如果Tdiff中的值<400,则为序列“ n”的一部分。 如果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
        }
    }

这已经进行了10小时。 我相信这仍然存在,并且不会停留在某处。

请帮忙。

谢谢

这是您想要的吗?

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM