R - dcast 或转置
R - dcast or transpose
我正在尝试获取以下小数据样本:
IndID J2015 E2015 Area
1 10 5 DC
2 15 7 DC
3 20 10 DC
然后用reshape
或reshape2
转换成如下格式:
Area 1_J2015 1_E2015 2_J2015 2_E2015 3_J2015 3_E2015
DC 10 5 15 7 20 10
我将对几百万行数据执行此操作,但是我无法找出执行此操作的正确公式,部分我认为这需要分两步或更多步骤完成。
我尝试了 reshape
包中 dcast
函数的各种格式:
df <- dcast(AreaID + J2015 + E2015 ~ IndID, data = data)
提前谢谢你。
先熔化,然后再铸成这样:
library(reshape2)
m <- melt(data, id.var = c("IndID", "Area"))
dcast(m, Area ~ IndID + variable)
给予:
Area 1_J2015 1_E2015 2_J2015 2_E2015 3_J2015 3_E2015
1 DC 10 5 15 7 20 10
或组合成一个命令:
recast(data, Area ~ IndID + variable, id.var = c("IndID", "Area"))
我正在尝试获取以下小数据样本:
IndID J2015 E2015 Area
1 10 5 DC
2 15 7 DC
3 20 10 DC
然后用reshape
或reshape2
转换成如下格式:
Area 1_J2015 1_E2015 2_J2015 2_E2015 3_J2015 3_E2015
DC 10 5 15 7 20 10
我将对几百万行数据执行此操作,但是我无法找出执行此操作的正确公式,部分我认为这需要分两步或更多步骤完成。
我尝试了 reshape
包中 dcast
函数的各种格式:
df <- dcast(AreaID + J2015 + E2015 ~ IndID, data = data)
提前谢谢你。
先熔化,然后再铸成这样:
library(reshape2)
m <- melt(data, id.var = c("IndID", "Area"))
dcast(m, Area ~ IndID + variable)
给予:
Area 1_J2015 1_E2015 2_J2015 2_E2015 3_J2015 3_E2015
1 DC 10 5 15 7 20 10
或组合成一个命令:
recast(data, Area ~ IndID + variable, id.var = c("IndID", "Area"))