Hi,
Assuming the data structure is similar to this example:
?difMH<-list(c(1,9,19,21,22,24,25,27,29,30,34,38,40),c(1,2,9,14,18,19,21,22,25,28,30,34,38,39),c(1,8,9,19,21,22,24,25,26,28,30,34,38),c(1,8,9,10,16,18,21,22,25,28,30,32,34,38,39),c(1,9,19,21,22,23,25,27,30,34,36,38,39),c(1,9,10,11,17,18,21,22,23,25,28,34,38,39))
names(difMH)<-c(100,90,80,70,60,50)
?difMH<-lapply(difMH,function(x) data.frame(DIFitems=x,newcol=seq_along(x)))
res1<-sapply(difMH,`[`,1)
res2<-t(sapply(res1,`[`,1:max(sapply(res1,length))))
?res2
#???????????? [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12]
#100.DIFitems??? 1??? 9?? 19?? 21?? 22?? 24?? 25?? 27?? 29??? 30??? 34??? 38
#90.DIFitems???? 1??? 2??? 9?? 14?? 18?? 19?? 21?? 22?? 25??? 28??? 30??? 34
#80.DIFitems???? 1??? 8??? 9?? 19?? 21?? 22?? 24?? 25?? 26??? 28??? 30??? 34
#70.DIFitems???? 1??? 8??? 9?? 10?? 16?? 18?? 21?? 22?? 25??? 28??? 30??? 32
#60.DIFitems???? 1??? 9?? 19?? 21?? 22?? 23?? 25?? 27?? 30??? 34??? 36??? 38
#50.DIFitems???? 1??? 9?? 10?? 11?? 17?? 18?? 21?? 22?? 23??? 25??? 28??? 34
? # ????????? [,13] [,14] [,15]
#100.DIFitems??? 40??? NA??? NA
#90.DIFitems???? 38??? 39??? NA
#80.DIFitems???? 38??? NA??? NA
#70.DIFitems???? 34??? 38??? 39
#60.DIFitems???? 39??? NA??? NA
#50.DIFitems???? 38??? 39??? NA
?is.matrix(res2)
#[1] TRUE
#For the second part, similar to Rui's solution:
hit<- do.call(rbind,lapply(res1,function(x) length(intersect(x,comp))))
flarm<- do.call(rbind,lapply(res1,function(x) length(setdiff(x,comp))))
A.K.
----- Original Message -----
From: Yung Chih Ou <chihchihou at gmail.com>
To: r-help <r-help at r-project.org>
Cc:
Sent: Wednesday, December 26, 2012 7:37 AM
Subject: [R] data comparison
Dear all:
I have six vector from six DIF detection results.
as below:
[1]? 1? 9 19 21 22 24 25 27 29 30 34 38 40
[1]? 1? 2? 9 14 18 19 21 22 25 28 30 34 38 39
[1]? 1? 8? 9 19 21 22 24 25 26 28 30 34 38
[1]? 1? 8? 9 10 16 18 21 22 25 28 30 32 34 38 39
[1]? 1? 9 19 21 22 23 25 27 30 34 36 38 39
[1]? 1? 9 10 11 17 18 21 22 23 25 28 30 34 38 39
I have two questions.
first, how to combine these to a matrix?
second, how to compare them with "1 9 21 22 25 30 34 38"
how much units hit?
how much units are false-alarm?
thanks!
______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.