[英]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.