2016-01-21 62 views
0

我有以下格式的數據幀,包含時間和變量。檢查R中的連續時間變量

time  var1 
14:01:01 0.36 
14:01:02 0.38 
14:01:03 0.39 
14:01:04 0.39 
14:01:05 0.40 
14:01:07 0.42 

什麼是檢查持續時間變量,如果有遺漏點作爲這樣的「14點01分06秒」,在上述情況下,最好的方法是什麼?

+1

使用'diff'通過'as.POSIXct'轉換你的時間和檢查它是否是更大的超過1秒 – thelatemail

+0

@thelatemail差異(as.POSIXct(DF $時間)) 錯誤的之後。 POSIXlt.character(as.character(x),...): 字符串不是標準的明確格式 – Anish

+2

您需要指定格式(可能是時區),如'as.POSIXct(df $ time,format =「%H:%M:%S」,tz =「UTC」) - R不是心靈讀者。 – thelatemail

回答

1

time變量轉換爲正式時間表示形式後使用diff。例如:

df$missingflag <- c(1, diff(as.POSIXct(df$time, format="%H:%M:%S", tz="UTC"))) > 1 
df 
#  time var1 missingflag 
#1 14:01:01 0.36  FALSE 
#2 14:01:02 0.38  FALSE 
#3 14:01:03 0.39  FALSE 
#4 14:01:04 0.39  FALSE 
#5 14:01:05 0.40  FALSE 
#6 14:01:07 0.42  TRUE 
相關問題