2
我仍在試圖更好地理解mlply的工作原理。這裏是我的數據集的簡化版本:使用mapply與Pmax提供挑日子和目的地之間的最大使用mlply與mapply不同的pmax輸出
days <- list(c(as.POSIXct("2010-08-29 00:00:00 EDT"), as.POSIXct("2010-08-30 00:00:00 EDT")))
day2 <- list(c(as.POSIXct("2010-07-22 00:00:00 EDT"), as.POSIXct("2010-07-23 00:00:00 EDT"), as.POSIXct("2010-07-24 00:00:00 EDT")))
days <- append(day2, days)
arrivals <- data.frame(date=as.POSIXct("2010-08-29 21:00:00 EDT"), size=72)
arrivals <- rbind(arrivals, c("2010-07-22 17:30:00 EDT",84))
,我得到如下:
starting <- mapply(function(x,y){pmax(x,y)},days,arrivals$date)
starting[[1]]
"2010-08-29 21:00:00 EDT" "2010-08-29 21:00:00 EDT" "2010-08-29 21:00:00 EDT"
我敢肯定,使用mlply的下一個版本不是等價的,顯然是我的錯誤,但是,我不太清楚爲什麼輸出不同。
starts <- mlply(cbind(arrivals$date,days), function(date,days){pmax(date,days)})
as.POSIXct(starts[[1]], origin='1970-1-1')
[1] "2010-08-30 02:00:00 EDT" "2010-08-30 02:00:00 EDT" "2010-08-30 02:00:00 EDT"
理想情況下,我正在尋找如何使用mlply重寫mapply語句。 由於提前, --JT
謝謝... tz對我來說並不重要,所以我可能會將它存儲爲chron。從好的方面來說,至少我正在以mlply編寫函數。 – JimmyT 2012-07-17 18:54:59