【发布时间】:2019-12-19 03:26:07
【问题描述】:
我有一个包含两列的数据框,并尝试将其转换为两种宽格式,如下所示。但是,我无法找出仅包含数字列和非数字列的数据框。
library(tidyverse)
library(reshape2)
sample_frame<-data.frame(id=c("x","x","y","y","z","z"),value=c(1,2,3,4,5,6))
desired_output<-cbind(x=filter(sample_frame,id=="x")$value,
y=filter(sample_frame,id=="y")$value,
z=filter(sample_frame,id=="z")$value)
sample_frame
desired_output
desired_output<-dcast(sample_frame,id~.,value.var="value")
desired_output
> sample_frame
id value
1 x 1
2 x 2
3 y 3
4 y 4
5 z 5
6 z 6
> desired_output
x y z
[1,] 1 3 5
[2,] 2 4 6
>
> desired_output<-dcast(sample_frame,id~.,value.var="value")
Aggregation function missing: defaulting to length
> desired_output
id .
1 x 2
2 y 2
3 z 2
如上所示,使用 dcast 给了我聚合。
【问题讨论】:
-
@thelatemail 添加了包裹信息