将计数器添加到循环

时间:2017-12-08 01:59:26

标签: r loops for-loop

关于我无法找到R的广泛问题:

我正在尝试在循环开始时添加计数器。 这样当我运行循环sim = 1000时:

if(hours$week1 > 1 and hours$week1 < 48) add 1 to the counter 
ifelse add 0

我遇到过打印一个句子的反教程,让你知道你在哪里(如果出现问题): e.g

For (i in 1:1000) {
    if (i%%100==0) print(paste("No work", i)) 
}

但我的计数器的目的是生成一个值输出,测量循环中1000次运行中有多少落在指定范围内。

4 个答案:

答案 0 :(得分:1)

代替

if(hours$week1 > 1 & hours$week1 < 48) {
    counter = counter + 1
}

您也可以使用

counter = counter + (hours$week1 > 1 && hours$week1 < 48)

因为R将TRUE转换为1,将FALSE转换为0。

答案 1 :(得分:0)

这个怎么样?


Dictionary

答案 2 :(得分:0)

你基本上拥有它。您只需要a)在循环之前初始化计数器,b)在&条件中使用and而不是if,c)实际上向计数器添加1。由于添加0与无所事事相同,因此您不必担心“其他”。

counter = 0
for (blah in your_loop_definition) {
    ... loop code ...
    if(hours$week1 > 1 & hours$week1 < 48) {
        counter = counter + 1
    }
    ... more loop code ...
}

答案 3 :(得分:0)

如果您的目标只是粗略地监视进度,并且您正在使用Rstudio,则一个简单的解决方案是仅刷新环境选项卡以检查i的当前值。