我有一个函数可以接收一个日期对象并返回一个日期对象。但是,当我使用mapply函数将该函数应用于数据框列时,遇到了问题:我没有得到预期的日期对象,而是数字。您有什么想法如何将它们转换为日期对象吗?此外,我很想知道这里发生了什么。真的非常感谢您的帮助!
最小示例:
#Define simple function that takes a date-object and returns a date-object
add_day <- function(dat) {return(dat + 1)}
#Set up data.frame with two date-object entries in one column
df <- data.frame(Col_A = c(as.Date("01/01/00", "%m/%d/%y"), as.Date("05/02/11", "%m/%d/%y")))
#That is the desired result: give a date-object to the function, get one back
add_day(df[1, "Col_A"]) #Returns [1] "2000-01-02"
add_day(df[2, "Col_A"]) #Returns [1] "2011-05-03"
#Why does it not work here? What do I get back?
mapply(add_day, df[, "Col_A"]) #Returns [1] 10958 15097; Why? What is that?