我正在尝试在R中设置一个空数据框,该数据框除其他外将由两个日期时间戳组成,例如2014年8月21日20:51。
这是我的代码:
eventised <- data.frame(student_id=integer(),
session_id=integer(),
start_ts=as.POSIXct(format = "%d/%m/%Y %H:%M"),
stop_ts=as.POSIXct(format = "%d/%m/%Y %H:%M"),
week=integer(),
macro_process=character(),
micro_process=character(),
stringsAsFactors=FALSE)
raw_events <- read.csv(file="SRL_Concat_ST1_Test_2.csv", header = TRUE, sep=",")
last_sess_ID <- 0
for (row in 1:nrow(raw_events)) {
if(raw_events[row, "SESSION_ID"] != last_sess_ID || row == nrow(raw_events)) {
print(row)
if(row !=1) {
eventised[nrow(eventised)+1,] <- c(r_student_id, r_session_id, r_start_ts, r_stop_ts, r_week, "MAC", "MIC")
# eventised[nrow(eventised)+1,] <- c(r_student_id, r_session_id, r_week, "MAC", "MIC")
}
r_student_id <- raw_events[row, "STUDENT_ID"]
r_session_id <- raw_events[row, "SESSION_ID"]
r_start_ts <- raw_events[row, "TIMESTAMP"]
r_stop_ts <- raw_events[row, "TIMESTAMP"]
r_week <- raw_events[row, "WEEK"]
last_sess_ID <- raw_events[row, "SESSION_ID"]
} else {
r_stop_ts <- raw_events[row, "TIMESTAMP"]
}
我收到此错误: 继承(x,“ POSIXct”)中的错误: 参数“ x”丢失,没有默认值
然后,我尝试执行以下操作: eventised [nrow(eventised)+1,] <-c(r_student_id,r_session_id,r_start_ts,r_stop_ts,r_week,“ MAC”,“ MIC”)
我得到: charToDate(x)中的错误: 字符串不是标准的明确格式
我可能在做一些愚蠢的事情,但我会非常感谢您的帮助。
预先感谢
F
数据
STUDENT_ID SESSION_ID TIMESTAMP LACTION_TYPE星期学习模式 4 7 11/08/2014 23:08 CONTENT_ACCESS 3正在重新访问
答案 0 :(得分:1)
感谢您的帮助。
我决定暂时将时间戳记视为字符串。就我的任务而言,现在还可以。当最终将数据帧输出为CSV时,我将必须确保正确处理它。但是现在...
答案 1 :(得分:0)
这应该注意日期时间格式:
df <- data.frame(start_ts=as.POSIXct(character()))