多くの化学者が直面している厄介な問題は、化合物の CAS 登録番号 (容易にアクセスできない商用データベースに保存されている) を Pubchem 識別子 (公開されている) に変換することです。Pubchem は 2 つの間の変換をサポートしていますが、手動の Web インターフェイスを介してのみサポートされており、公式の PUG REST プログラム インターフェイスはサポートされていません。
Ruby でのソリューションは、e- utilitiesインターフェイスに基づいてここに示されています。with-ruby/
これがどのようにRに変換されるか知っている人はいますか?
編集:以下の回答に基づいて、最もエレガントなソリューションは次のとおりです。
library(XML)
library(RCurl)
CAStocids=function(query) {
xmlresponse = xmlParse( getURL(paste("http://www.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pccompound&retmax=100&term=",query,sep="") ) )
cids = sapply(xpathSApply(xmlresponse, "//Id"), function(n){xmlValue(n)})
return(cids)
}
> CAStocids("64318-79-2")
[1] "6434870" "5282237"
乾杯、トム