2016-07-27 4 views
-1

나는 (i)의 도착 - (i + 1)의 출발을 계산해야하고 그런 값을 새 열에 저장해야하는 방식으로 두 개의 열을 순환시키고 싶습니다.루프 차이에 대한 R 프로그래밍

departure       arrival 
2012-01-26 08:15:00     2012-01-26 08:50:00 
2012-01-26 11:30:00    2012-01-27 16:00:00 
2012-01-27 18:00:00    2012-01-27 23:05:00 
2012-02-11 00:20:00     2012-02-11 09:10:00 

expected output 
waiting time 
(2012-01-26 08:50:00)-(2012-01-26 11:30:00) = 2 hr 40 min 
(2012-01-27 16:00:00)-(2012-01-27 18:00:00) = 2 hrs 
(2012-01-27 23:05:00)- (2012-02-11 00:20:00)=14 days 13 hrs, 349 hrs 

위의 데이터는 완전한 코드로 작성하십시오. RI에서 시도하지만 일부 오류가 있습니다

for (i :length(data frame){ 
i <- i[17] #index of arrival column 
j <- i+1[18] #index of departure column 
diff = i-j 
return diff 
} 
diff = waiting time 

내가 POSXClt

답변

0

이 패키지를 사용하여 데이터의 출발과 도착을 변환 한 도착에 차이 출발

을 계산에 약간의 오류가 있습니다 lubridate :

d$departure <- lubridate::ymd_hms(d$departure) 
d$arrival <- lubridate::ymd_hms(d$arrival) 

d$difference <- d$departure - d$arrival 
d 
  departure    arrival difference 
1 2012-01-26 08:15:00 2012-01-26 08:50:00 -35 mins 
2 2012-01-26 11:30:00 2012-01-27 16:00:00 -1710 mins 
3 2012-01-27 18:00:00 2012-01-27 23:05:00 -305 mins 
4 2012-02-11 00:20:00 2012-02-11 09:10:00 -530 mins 
+0

감사합니다. 나는 도착 가치와 출발의 두 번째 값 즉, (2012-01-26 08:50:00) - (2012-01-26 11:30:00)의 차이가 필요합니다. 차이는 2입니다. 시간 40 분 –