问题:
您有一个data.frame(df),它由POSIXlt日期格式的某些列组成。
str(df)的输出如下:
$identifier : int 1 1 1 1 1 1 1 1 1 1 ...
$date.time : POSIXlt, format: "2010-06-01 07:27:00" "2010-06-01 07:27:00"
如果您使用
ddply(df, identifier, summarise, min.time = min(date.tim)
您将收到类似的错误:
'names' attribute [11] must be the same length as the vector [10]
下面提到的解决方案。
答案 0 :(得分:1)
问题记录在in this github issue
这基本上是数据框架无法处理POSIXlt日期。
" POSIXct"包含在数据框中更方便,和 " POSIXlt"更接近人类可读的形式。
问题中提到的解决方案如下
df$tm <- as.POSIXct(strptime(paste(dates, times), "%m/%d/%y %H:%M:%S"))
ddply(df, ~Var1, dim)