我正在尝试转换看起来像这样的数据:
> long.data
date ID average stat
5128 20020510 UKM66 42.51919 minimum
2267 20020510 PL622 61.31768 average
265 20020503 DE71E 42.17819 maximum
其中average
由date
,ID
和stat
的组合标识为以下内容:
> wide.data
date ID minimum average maximum
1 20020510 UKM66 50 62 70
2 20020510 PL622 52 60 63
3 20020510 DE71E 49 67 80
据我所知,dcast
是一种很好的方式,但是当我尝试以下内容时:
> wide.data <- dcast(long.data, date + ID + stat ~ average)
我得到一个警告和一个可怕的长数据框:
Using stat as value column: use value.var to override.
> ncol(wide.data)
[1] 4577
似乎R给了我一个列,用于每个独特的观察值。我已经阅读了reshape2
和dcast
上的文档,但我仍然没有做到正确。这里出了什么问题?