我有一个数据集有2列,即“时间(Ti)”和“计数器(Co)”。每当计数器为1时,我应该计算该“行时间”与前一“行时间”之间的时间差。Ifelse in for循环不产生所需的输出
为了实现上述要求,我使用的以下逻辑
for (i in 1:length(file1$counter))
{
n1 <- ifelse(file1$counter==1,(file1$TIME[(i)] - file1$TIME[(i-1)]),0)
}
但是我得到同样,n1是默认显示为时间序列与开始= 1标准输出作为0 0 2 2 2 2 2 0 0 0 0 0 0 2 2 2 2 2 0 0
代替0 0 2 1 4 1 4 0 0 0 0 0 0 2 2 2 2 2 0 0
,结束= 20和 频率= 1.
'ifelse'被矢量,所以你不应该需要外显for循环,或者你需要使用'如果(..)... else ...' –