reshape :: recast不会使用fill = NA作为总和

时间:2015-11-20 09:22:01

标签: r reshape reshape2

a <- data.frame(
variable=c("a","b","c"),
date=c("2015-01-01","2015-01-01","2015-01-02"),
value=c(1,2,3))

我得到了

recast(a,date~variable,sum,fill=10000)
Using variable, date as id variables
>        date     a     b     c
>1 2015-01-01     1     2 10000
>2 2015-01-02 10000 10000     3

但是

recast(a,date~variable,sum,fill=NA)
Using variable, date as id variables
  

vapply中的错误(indices,fun,.default):值必须是'logical'类型,    但是FUN(X [[1]])结果是'double'类型

为什么会这样?

来自帮助

  

fill:用于填充结构缺失的值,默认为将fun.aggregate应用于0长度向量的值

在这种情况下,如果缺少值,我希望sumNA

1 个答案:

答案 0 :(得分:2)

指定您要使用的NA类型,它应该有效:

recast(a, date ~ variable, sum, fill = NA_real_)
# Using variable, date as id variables
#         date  a  b  c
# 1 2015-01-01  1  2 NA
# 2 2015-01-02 NA NA  3