转换tapply输出到数据帧中的R
问题描述:
我有一个tapply调用看起来像转换tapply输出到数据帧中的R
1 2 4
678.2 19.3 716.2
一些输出,我希望把它做成一个数据帧,看起来像
key value
1 1 678.2
2 2 19.3
3 4 716.2
如何我可以这样做吗?
答
一些示例代码会很好,看看你在做什么。以微弱的回答你的问题,如果x
是你tapply
的结果,那么
data.frame(key=names(x), value=x)
更广泛地说,看到?by
和?aggregate
,并且还包plyr
更普遍的数据扯皮的需求。
答
如果用集合替换tapply
,它会自动作为data.frame出来。
aggregate(value ~ key, FUN = mean)
其中值和密钥对应于tapply
呼叫
tapply(value, key, mean)
提供dput()从该对象。我可以看到为什么这个问题被低估了,但你可以编辑它来澄清情况。 –