这是我尝试过的代码,用于在for循环中更改迭代次数
Atom
但是我的销售代表没有增加。是否重写了repscount的值?是否有另一种方法可以不使用while循环呢?
答案 0 :(得分:0)
您的代码不起作用,因为print(df.groupby(['data1', 'data2', 'data3'], as_index=False).first())
首先检查它必须执行多少次运行。更改for
之后,repscount
函数将不再检查其应执行的迭代次数。这个简单的例子说明:
for
因此,首先评估n <- 5
for (i in 1:n) {
print(i)
n <- n + 1
}
中的条件。 R知道它将执行五次迭代,并且这样做。 n之后发生变化的事实对此没有影响。
您可以改用for
循环:
while
这里,在每次运行结束之后,将repscount <- value
i <- 1
while (i <= repscount) {
##certain calculations on x
if (x == 0) {repscount <- repscount + 1} else {}##add x to a list
i <- i + 1
}
与repscount
进行比较,并且仅当i
时才从头开始迭代。