[BioC] get gene targets from a specific microRNA

James F.Reid reidjf at gmail.com
Tue Sep 25 15:10:36 CEST 2012

Hi Yot,

> Hi All, 
> I'm trying to get lists of gene targets from specific microRNAs, namely the
> hsa-miRs and hsa-let-7s from the package targetscan.Hs.eg.db. 
> So far, I can only see a way to do that by mapping all hsa-miRs into miR
> family names first, then get gene target list from mget(mir_family,
> revmap(targetscan.Hs.egTARGETS)). The problem is that some miR families
> include non-human miRs. I just want the targets of human miRs only. 

Your approach is correct:


## select human mirna
humanMirnaIdx <- grep("hsa", mappedkeys(targetscan.Hs.egMIRNA))
humanMirna <- mappedkeys(targetscan.Hs.egMIRNA)[humanMirnaIdx]

## select seed-based families for human mirna
humanMirnaFamilies <- unlist(mget(humanMirna, targetscan.Hs.egMIRBASE2FAMILY))

## select targets of families
humanMirnaTargets <- mget(humanMirnaFamilies, revmap(targetscan.Hs.egTARGETS))
names(humanMirnaTargets) <- humanMirna

now you have a list of human mirna with their respective gene targets.
Note that you will have some redundancy to care of. Namely that single mirna
belonging to the same family will have the same target genes and also within
a list of putative targets you will find some genes repeated because they
match multiple time in the 3' UTR.
It is expected for a seed-based family to have mirna that belong to other


> Cheers,
> Yot

More information about the Bioconductor mailing list