If your question is: can probeset IDs from different platforms be mapped to one another in a similar way as mapping probesets to genes, then the answer is: Yes. BioMart allows you to map almost anything that has an ID to anything else that has an ID.
You can use BioMart either via the web interface or programatically. A brief guide to using the web interface, for mapping HG U133 Plus 2 to HuGene 1.0:
- Go to the start page
- Select H. sapiens Ensembl genes for your database; Human genes (GRCh38.p10) for your dataset
- Click Filters in the left-hand column
- Expand "REGION", scroll down to GENE and select "Input microarray probes/probesets ID list [Max 500 advised]"
- Select AFFY HG U133 PLUS 2 probe ID(s) and either copy/paste or upload a list, one per line
- Click Attributes in the left-hand column
- Scroll through, uncheck what you don't want to see and choose what you do, for example Gene Stable ID, AFFY HuGene 1 0 st v1 probe and AFFY HG U133 Plus 2 probe
- Finally click "Results" in the menu at the top of the left-hand column
And you should see a result like this (you'll need to click the "Results" button).
You should not expect that there be a one-to-one mapping, for two reasons:
- Genes have multiple transcripts and probesets are mapped to each transcript
- Some transcripts have more than one probeset: in this case, the HuGene IDs 8002301 and 8002303 map to transcripts for this gene
Finally: here's a programmatic example using R/BioMart:
library(biomaRt)
mart.hs <- useMart("ensembl", "hsapiens_gene_ensembl")
results <- getBM(attributes = c("ensembl_gene_id", "affy_hugene_1_0_st_v1", "affy_hg_u133_plus_2"),
filters = "affy_hg_u133_plus_2",
values = c("210519_s_at"),
mart = mart.hs)
results
ensembl_gene_id affy_hugene_1_0_st_v1 affy_hg_u133_plus_2
1 ENSG00000181019 8002301 210519_s_at
2 ENSG00000181019 8002303 210519_s_at
merge
function in R orJOIN
statement in SQL. $\endgroup$join
would work too $\endgroup$