У меня есть набор данных с длительностями (в секундах, vec1) и групповой переменной (vec2):
df=data.frame(vec1=c(180,7560,16020,300,8940,15120,9600,300,2580,25860,13200,6900,22380,11460,15480),
vec2=c("a","a","a","a","a","a","b","b","b","b","b","b","b","b","b"))
Я хочу рассчитать среднюю продолжительность для каждой группы.Я проверил два способа:
test1=plyr::ddply(df, .(vec2), function(x) mean(x$vec1))
test1$V1=as.POSIXct(test1$V1, origin="1970-01-01", tz = "GMT")
test2=plyr::ddply(df, .(vec2), function(x) as.POSIXct(mean(x$vec1), origin="1970-01-01", tz = "GMT"))
Результаты разные (еще один час для test2, правильный ответ дается test1):
test1 vec2 V1 1 a 1970-01-01 02:13:40 2 b 1970-01-01 03: 19: 33
test2 vec2 V1 1 a 1970-01-01 03:13:40 2 b 1970-01-01 04:19: 33
Я знаю, какой код дает мне правильный ответ, но я хотел бы понять, почему результат отличается.У вас есть объяснение?Спасибо!