我正在Win7上通过 R 进行数据收集。
给定的数据是:
var1 var2 value
我需要通过var1进行分组,然后对每个var1进行分组,然后按var2进行分组。
然后,输出是与相同var1和var2相关联的值的列向量。这里,var1和var2就像键一样。
示例,
var1 var2 value
1 56 649578
2 17 357835
1 88 572397
2 90 357289
1 56 427352
2 17 498455
1 88 354623
2 90 678658
结果应为
var1 var2 value
1 56 649578
1 56 427352
1 88 354623
1 88 572397
2 17 357835
2 17 498455
2 90 357289
2 90 678658
而且,我需要在CSV文件中将值打印为
对于var 1为1:
649578 354623
427352 572397
对于var 1为2:
357835 357289
498455 678658
而且,我还需要在CSV文件中将值打印为
对于var 1 = 1:
1 56 649578
1 56 427352
1 88 354623
1 88 572397
对于var1 = 2:
2 17 357835
2 17 498455
2 90 357289
2 90 678658
怎么做?
我发现了一些不直接有用的帖子。
更新 如何选择和打印与每个唯一var2相关的值?
R 中是否有字典数据结构?
答案 0 :(得分:0)
这相对接近你所相信的,但不完全相同。它应该提供一些帮助,但
library(reshape2)
library(plyr)
dat<-data.frame(var1=c(1,2,1,2,1,2,1,2),var2=c(56,17,88,90,56,17,88,90),value=c(649578,357835,572397,357289,427352,498455,354623,678658))
dat<-dat[order(dat$var1,dat$var2),]
dat<-ddply(dat,.(var1,var2),summarize,seq1=c(1:length(value)),value=value)
dat.new.new<-dcast(dat,var1+var2~seq1,value.var="value")
使用order()的第二个数据调用将按照您的要求对结果进行排序,并且dat.new.new数据框接近您所查找的内容。
获取KidCudi参考的奖励积分