0
在R我有一個數據框data
。如何在一串時間子集
head (data) gives
ID sign_in
21 23:50:21
12 10:11:38
...
包含ID和該ID的登錄時間。兩列都是字符串(或字符)。 假設我想要一個data
的子集,它只包含從10 o'clcok到11點的時間間隔中的ID。
這是我如何試圖解決這個問題:
data_new = subset(data, data[,2] %in% as.character(10:00:00) : as.character(11:00:00))
但R已適時提供一個錯誤消息說錯誤:恆
我怎樣才能解決這個意外?
你是怎麼與R期待'as.character(10:00做: 00):as.character(11:00:00)'? R解析器從內到外進行解析。首先,它試圖解析'10:00:00',但':'只能處理'10:0',然後,這個向量被轉換爲字符,與第二個向量相同。然後,你試着在兩個字符向量上運行':',但':'函數只能接受標量值等等。你應該真的試着將你的代碼分成幾部分:'10:00:00'和'as'。字符(10:00:00)'等。無論如何,嘗試'library(data.table); as.ITime(「23:50:21」)%(as.ITime(「10:00:00」):as.ITime(「11:00:00」)) –