[R] obtain triplets from Data Frame columns
PQuery
pierre.khoueiry at embl.de
Mon Aug 5 08:26:07 CEST 2013
Hi Guys,
I have a list elements in two columns of a data frame. I want first to
subselect on V1 and then to form and count all possible and unique triplets
of V1 with the corresponding elements in V2 but exclude triplets for which
a pair (V1 V2) does not exists:
Example input
V1 V2
A B
A C
D E
D F
D G
E F
E G
F G
Example output
DEF
DEG
DFG
EFG
(ABC is eliminated because the pair B C does not exist in the data frame)
Total: 4 triplets
Here is what I tried, but was unsuccessful:
uniq.V1 <- unique(df.V1)
original.pairs <- do.call(paste, c(df[c("V1", "V2")], sep = ":"))
nbElements <- 3
l.res<-lapply(uniq.V1, function(x){
set <- c(x, unlist(subset(df$1==x, select=c(V2))))
if(length(set) >= nbElements){
tmp.combn <- combn(set, nbElements, simplify=FALSE)
## I tried here to create all possible combination of pairs to test with
the original pairs and return only the successful ones but it became a very
complicated structure ....
}
})
Any help/suggestion is appreciated,
Best
--
View this message in context: http://r.789695.n4.nabble.com/obtain-triplets-from-Data-Frame-columns-tp4673091.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list