How to find GEO data sets using Drug Bank ID and bioDBnet I want to find all experiments in GEO that are associated with a drug (for example tolvaptan). Is there any quick and scalable way to to this? I want to query more than 100 drugs.

I tried to use bioDBnet to map Drug Bank ID to look up data sets, but I don't know what output format should I select.
You could take a look at the rentrez package for R. You can use the entrez_search function to get the GEO IDs for the studies related to your query, and then the entrez_summary function for the results. So, for example:

x &lt;- rentrez::entrez_search(db="gds", term=paste0("tolvaptan AND gse[ETYP]"),
                            use_history = T)
res &lt;- rentrez::entrez_summary(db="gds", id=x$ids)
str(res)


Where res will be a list containing objects of the esummary class. Then, you can use the following line to get the GSE accession numbers related to tolvaptan:

lapply(res, `[[`, "gse")    


So you could put this function in a loop replacing "tolvaptan" with your drugs:

drugs &lt;- c("drugA", "drugB", "drugC")
for(drug in drugs){
    x &lt;- rentrez::entrez_search(db="gds", term=paste0(drug, " AND gse[ETYP]"))
    res &lt;- rentrez::entrez_summary(db="gds", id=x$ids)
    lapply(res, `[[`, "gse")     
} 


Take a look at the rentrez documentation for more details.