Can'T Run Properly The Getlds Function In Biomart Package.
1
1
Entering edit mode
14.0 years ago
Sirus ▴ 820

Hello, every body I want to do a mapping from uniportIDs to Ensemble gene IDs using biomaRt package in R I have used the followed instruction

library(biomaRt)
ensemble<-useMart("ensembl",dataset="scerevisiae_gene_ensembl")
mart2 <-useMart("ensembl",dataset="protein")
proteins<-c("P53736","P53737","P53738","P53739","P53740","P53741","P53742","P53743","P53744","P53745")
getLDS(attributes="ensembl_gene_id",mart=ensemble,attributesL="protein_accession",filtersL="protein_accession",valuesL=proteins,martL=mart2)

I get the following error:

Error in get(filtersL, env = martFilters(martL)) : invalid 'envir' argument

Do someone have an idea about it? Thank you.

biomart r • 3.3k views
ADD COMMENT
5
Entering edit mode
14.0 years ago
Neilfws 49k

I have not used the getLDS() function, but I think the problem is that protein_accession is not a valid attribute. You can get all of the attributes into a data frame using the listAttributes() function:

library(biomaRt)
attrs <- listAttributes(ensemble)

It looks like you have UniProt protein IDs, so you can look for attributes named "uniprot" using grep:

attrs[grep("uniprot", attrs$name),]
                      name                 description
44            uniprot_sptrembl    UniProt/TrEMBL Accession
45           uniprot_swissprot        UniProt/SwissProt ID
46 uniprot_swissprot_accession UniProt/SwissProt Accession

Then, I would use getBM() to retrieve the gene IDs:

results <- getBM(attributes = c("ensembl_gene_id", "uniprot_swissprot_accession"),
           filters = "uniprot_swissprot_accession", values = proteins, mart = ensemble)

results
ensembl_gene_id    uniprot_swissprot_accession
1          YNR040W                      P53736
2          YNR042W                      P53737
3          YNR046W                      P53738
4          YNR047W                      P53739
5          YNR048W                      P53740
6          YNR051C                      P53741
7          YNR053C                      P53742
8          YNR054C                      P53743
9          YNR056C                      P53744
10         YNR059W                      P53745
ADD COMMENT
0
Entering edit mode

Thank you very much it worked perfectly, in fact in the second mart I am using the attribute "accession" exists.

ADD REPLY

Login before adding your answer.

Traffic: 2472 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6