一个基本的应用匿名函数

时间:2014-06-27 02:03:11

标签: r

我的数据框a包含iddate列,第二个数据框b包含id作为第一列。对于b中的每一行,我尝试查找a中具有相同id的所有行,然后找到日期的最小值。我使用下面的代码,但是当我运行它时,我得到一个数字而不是日期。我想知道是否有人可以帮助我。

class(a$date)
# "Date"
funP <- function(x){
    b <- subset(a, id==x[1])
    min(b$date)
}
f <- apply(b, 1, funP)
class(f)
# "numeric"

1 个答案:

答案 0 :(得分:2)

显然apply函数会转换日期值。手册(?apply)提及:

  

<强>值:

     

[...]   在所有情况下,结果都被'as.vector'强制转换为其中一个基本结果   矢量类型[...]

您可以将其转换回Date类:

f <- as.Date(f, origin="1970-01-01")