Reactome seems to support Gallus gallus already? - https://reactome.org/PathwayBrowser/#/SPECIES=49591
I am not sure of the validity of converting the genes to human and then running this on human-curated pathways.
For the conversion, you will likely find a programmatic way via Ensembl REST: https://rest.ensembl.org/
Otherwise, from a previous answer that I gave on Bioc ( https://support.bioconductor.org/p/132551/#132568 ), this is achievable; however, my experience tells me that overlap between Gallus gallus and Homo sapiens is not extensive.
1, load packages
require(biomaRt)
2, search for the chicken mart
datasets <- listDatasets(useMart('ensembl'))
datasets[grep('Chicken', datasets[,2]),]
dataset description version
71 ggallus_gene_ensembl Chicken genes (GRCg6a) GRCg6a
3, 'connect to' the chicken and human marts
chicken <- useMart('ensembl', dataset = 'ggallus_gene_ensembl')
human <- useMart('ensembl', dataset = 'hsapiens_gene_ensembl')
4, create a lookup table for all chicken genes
table <- getBM(
attributes = c('ensembl_gene_id','external_gene_name','entrezgene_id'),
mart = chicken)
head(table[table$external_gene_name != '',], 10)
ensembl_gene_id external_gene_name entrezgene_id
6 ENSGALG00000042750 ND1 39116926
10 ENSGALG00000043768 MT-ND2 NA
16 ENSGALG00000032142 MT-CO1 NA
19 ENSGALG00000032456 COII NA
21 ENSGALG00000032465 ATP8 39116937
22 ENSGALG00000041091 ATP6 39116912
23 ENSGALG00000035334 COX3 39116913
25 ENSGALG00000030436 ND3 39116938
27 ENSGALG00000042478 ND4L 39116939
28 ENSGALG00000036229 ND4 39116916
5, map some chicken Entrez gene IDs to human
chicken_ids <- table$entrezgene_id[1:20]
getLDS(
filters = 'entrezgene_id',
values = chicken_ids,
mart = chicken,
attributes = c('ensembl_gene_id','external_gene_name','entrezgene_id'),
martL = human,
attributesL = c('hgnc_symbol','ensembl_gene_id','entrezgene_id','gene_biotype'))
Gene.stable.ID Gene.name NCBI.gene..formerly.Entrezgene..ID HGNC.symbol
1 ENSGALG00000042750 ND1 39116926 MT-ND1
Gene.stable.ID.1 NCBI.gene..formerly.Entrezgene..ID.1 Gene.type
1 ENSG00000198888 4535 protein_coding
---------------
Edit: One can even create a 'master' lookup of all Chicken genes to human:
master <- getLDS(
filters = 'entrezgene_id',
values = table$entrezgene_id,
mart = chicken,
attributes = c('ensembl_gene_id','external_gene_name','entrezgene_id'),
martL = human,
attributesL = c('hgnc_symbol','ensembl_gene_id','entrezgene_id','gene_biotype'))
head(master)
Gene.stable.ID Gene.name NCBI.gene..formerly.Entrezgene..ID HGNC.symbol
1 ENSGALG00000001714 PUSL1 419419 PUSL1
2 ENSGALG00000032413 NADK 419403 NADK
3 ENSGALG00000001835 SCNN1D 428184 SCNN1D
4 ENSGALG00000037713 FNDC10 107054923 FNDC10
5 ENSGALG00000001551 CCNL2 395124 CCNL2
6 ENSGALG00000039193 AGRN 396538 AGRN
Gene.stable.ID.1 NCBI.gene..formerly.Entrezgene..ID.1 Gene.type
1 ENSG00000169972 126789 protein_coding
2 ENSG00000008130 65220 protein_coding
3 ENSG00000162572 6339 protein_coding
4 ENSG00000228594 643988 protein_coding
5 ENSG00000221978 81669 protein_coding
6 ENSG00000188157 375790 protein_coding
dim(master)
[1] 14591 7
Kevin
thank you for the detailed answer. Reactome has chick database and I run itthere at the end but the
reactomePA
package don't have gallus gallus as organism.