Filter-class: Filter results fetched from the miRTarbase database

Description Details Objects from the Class Slots Extends Methods Note Author(s) See Also Examples

Description

These classes allow to specify which entries should be retrieved from the database. The filters defined here extend the filters from the ensembldb Bioconductor package.

Details

In addition to the above classes all Filter classes defined in the ensembldb or mirnahostgenes packages. The complete list of allowed filters is (in alphabetic order):

EntrezFilter

Filter the results for specific NCBI Entrezgene IDs.

ExperimentFilter

Restrict the results to specific experiments. See listExperiments for a full list of supported experiments.

GenenameFilter

Restrict the results to specific genes based on their name/symbol.

MatMirnaFilter

Restrict the results to specified mature miRNA names.

MatMirnaIdFilter

Restrict the results to specified mature miRNA accession IDs.

MirfamFilter

Restrict the results to interactions of miRNAs from the specified miRNA family.

MirfamIdFilter

Restrict the results to interactions of miRNAs from the specified miRNA family (ID/accession).

PreMirnaFilter

Restrict the results to interactions of mature miRNAs derived from the specified pre-miRNAs (identified by their name).

PreMirnaIdFilter

Restrict the results to interactions of mature miRNAs derived from the specified pre-miRNAs (identified by their accession).

PublicationFilter

Restrict the results to MTIs validated in the specified publications (identified by their PubMed IDs).

SpeciesFilter

Restrict the results to miRNAs or target genes from the specified species.

SupportTypeFilter

Restrict the results to MTIs with specified support type/evidence level. Use the method listSupportTypes to get a list of available support types.

MirtarbaseIdFilter

Restrict the results to MTIs based on certain Mirtarbase IDs.

Objects from the Class

While objects can be created by calls e.g. of the form new("ExperimentFilter", ...) users are strongly encouraged to use the specific functions: ExperimentFilter, PublicationFilter, SpeciesFilter, SupportTypeFilter and MirtarbaseIdFilter. See examples below for usage.

Slots

condition:

Object of class "character": can be either "=", "in" or "like" to filter on character values (e.g. gene id, gene biotype, seqname etc), or "=", ">" or "<" for numerical values (chromosome/seq coordinates). Note that for "like" value should be a SQL pattern (e.g. "ENS%").

feature

For SpeciesFilter: allows to specify whether entries should be filtered by the genes of a certain species ("gene") or miRNAs from a certain species ("mirna").

value:

Object of class "character": the value to be used for filtering. Possible values for ExperimentFilter, SpeciesFilter or SupportTypeFilter can be retrieved using the listExperiments, listSpecies and listSupportTypes, respectively.

valueIsCharacter:

Object of class "logical": that's an internal slot which value should not be changed.

Extends

Class "AnnotationFilter" defined in the AnnotationFilter package.

Methods

(in alphabetic order) All methods are applicable to all filter classes extending the AnnotationFilter.

column

signature(object = "ExperimentFilter", db = "MirtarbaseDb"): returns the column (table column name in the miRTarbase database) to be used for the filtering. The method can be applied to any filter class defined in the mirtarbase, mirnahostgenes or ensembldb packages.

condition

signature="ExperimentFilter",db="MirtarbaseDb" Returns the condition of the filter.

show Print some information about the object.

value

signature(object="ExperimentFilter", db="MirtarbaseDb"): returns value of the filter.

where

signature(object = "ExperimentFilter", db = "MirtarbaseDb"): returns the where condition for the SQL call to the miRTarbase database. The method can be applied to any filter class defined in the mirtarbase, mirnahostgenes, ensembldb or AnnotationFilter packages.

Note

The filter for experiments should ideally use as condition a "contains" and as value a pattern such as "PCR" to retrieve all entries for MTIs validated using PCR based methods as the values in the experiments column of the miRTarbase database are not standardized.

The miRTarbase database does only provide mapping between mature miRNA names and target genes, thus, PreMirnaFilter, PreMirnaIdFilter, MatMirnaIdFilter, MirfamFilter and MirfamIdFilter instances internally map the provided identifier to the corresponding mature miRNA names using the mirbase.db package (e.g. using the premirna2matmirna function). Note however that some mapping might not be up-to-date, since the mirbase.db package is not updated regularily.

Author(s)

Johannes Rainer

See Also

GenenameFilter, premirna2matmirna

Examples

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
##***********************
##
## EntrezFilter
##***********************
##
EFilt <- EntrezFilter(123, condition = "contains")
EFilt
## default column of the filter
field(EFilt)
column(EFilt)
## column of the filter for the mirtarbase package:
column(EFilt, mirtarbase)
## and the where query:
where(EFilt, mirtarbase)

## EntrezFilter with more than one value:
EFilt <- EntrezFilter(c(123, 3435))
EFilt
where(EFilt, mirtarbase)


##***********************
##
## ExperimentFilter
##***********************
## create a simple experiment filter; this would return all entries that have "qpcr"
## in the experiments column; like is case insensitive.
EFilt <- ExperimentFilter("PCR")
column(EFilt, mirtarbase)
where(EFilt, mirtarbase)

EFilt <- ExperimentFilter(c("PCR"), condition = "contains")
where(EFilt, mirtarbase)

## a good starting point is to list all experiments from the database
## and select the pattern from there
listExperiments(mirtarbase)

##***********************
##
## GenenameFilter
##***********************
## create a gene name filter
GFilt <- GenenameFilter("Bcl2l11", condition="!=")
GFilt
## the column name in the ensembldb package
column(GFilt)
## and in the mirtarbase package
column(GFilt, mirtarbase)
where(GFilt, mirtarbase)


##***********************
##
## MatMirnaFilter
##***********************
## mature miRNA filter
MFilt <- MatMirnaFilter(c("hsa-miR-16-5p", "hsa-miR-16-3p"))
MFilt
## and in the mirtarbase package
column(MFilt, mirtarbase)
where(MFilt, mirtarbase)


##***********************
##
## PublicationFilter
##***********************
## create a simple publication filter (on Pubmed IDs)
PFilt <- PublicationFilter(123)
PFilt
## the column in the mirtarbase package
column(PFilt, mirtarbase)
where(PFilt, mirtarbase)


##***********************
##
## SpeciesFilter
##***********************
## create a species filter on genes
SFilt <- SpeciesFilter("Homo sapiens", feature="gene")
SFilt
## the column for the gene
column(SFilt, mirtarbase)
where(SFilt, mirtarbase)

## the same for miRNA
SFilt <- SpeciesFilter("Homo sapiens", feature="mirna")
## the column for miRNA
column(SFilt, mirtarbase)
where(SFilt, mirtarbase)

## what if we used a non-standard species?
SFilt <- SpeciesFilter("Homo hobbeniensis", feature="gene")
## this throws a warning
suppressWarnings(
    where(SFilt, mirtarbase)
)
## obviously only values present in the database make sense:
listSpecies(mirtarbase, "gene")
listSpecies(mirtarbase, "mirna")


##***********************
##
## SupportTypeFilter
##***********************
## create a filter on the mirtarbase support types
SFilt <- SupportTypeFilter("unknown")
SFilt
## the column that will be queried
column(SFilt, mirtarbase)
## throws a warning since the support type unknown is not present in the database
suppressWarnings(
    where(SFilt, mirtarbase)
   )

## better to select one of the correct support types:
listSupportTypes(mirtarbase)


##***********************
##
## PreMirnaFilter
##***********************
## pre miRNA filter.
## Note that the PreMirnaFilter methods for MirtarbaseDb internally map the pre-miRNA name
## to mature miRNA names based on the mirbase.db package, as the
## miRTarbase database does not provide pre-miRNA ids.
PF <- PreMirnaFilter(c("bla", "hsa-mir-15b"))
## the where internally maps the pre-miRNA ID to the corresponding mature miRNA ID(s)
where(PF, mirtarbase)

## what if nothing was found...
PF <- PreMirnaFilter("baf")
where(PF, mirtarbase)
## returns nothing

PF <- PreMirnaFilter(c("bla", "hsa-mir-15b"), condition="!=")
where(PF, mirtarbase)

##
PF <- PreMirnaFilter("hsa-mir-15b")
where(PF , mirtarbase)


##***********************
##
## PreMirnaIdFilter
##***********************
PF <- PreMirnaIdFilter("MI0000070")
where(PF, mirtarbase)


##***********************
##
## MatMirnaIdFilter
##***********************
MF <- MatMirnaIdFilter("MIMAT0004489", "!=")
where(MF, mirtarbase)


##***********************
##
## MirfamFilter
##***********************
MF <- MirfamFilter("mir-15")
where(MF, mirtarbase)


##***********************
##
## MirfamIdFilter
##***********************
MF <- MirfamIdFilter("MIPF0000006")
where(MF, mirtarbase)

jotsetung/mirtarbase documentation built on May 19, 2019, 9:42 p.m.