Skip to content

08. PubChemの利用方法 コマンドライン

issaku yamada edited this page Sep 22, 2022 · 6 revisions

データの取得方法

Macからcurlを使う方法

  1. Macのターミナルのアプリが開きます。

  2. curl wttr.in/Kumamoto と入力し、リターンして、以下のようなデータが取得できれば、curlが利用できます。

bash-3.2$ curl wttr.in/Kumamoto
Weather report: Kumamoto

      \   /     Clear
       .-.      19 °C          
    ― (   ) ―   ← 8 km/h       
       `-’      10 km          
      /   \     0.0 mm         
                                                       ┌─────────────┐                                                       
┌──────────────────────────────┬───────────────────────┤  Thu 22 Sep ├───────────────────────┬──────────────────────────────┐
│            Morning           │             Noon      └──────┬──────┘     Evening           │             Night            │
├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤
│     \   /     Sunny          │     \   /     Sunny          │    \  /       Partly cloudy  │    \  /       Partly cloudy  │
│      .-.      +23(25) °C     │      .-.      +29(31) °C     │  _ /"".-.     +25(26) °C     │  _ /"".-.     +23(25) °C     │
│   ― (   ) ―   ↓ 5-6 km/h     │   ― (   ) ―   ↘ 8-9 km/h     │    \_(   ).   ↘ 1-2 km/h     │    \_(   ).   ↘ 3-6 km/h     │
│      `-’      10 km          │      `-’      10 km          │    /(___(__)  10 km          │    /(___(__)  10 km          │
│     /   \     0.0 mm | 0%    │     /   \     0.0 mm | 0%    │               0.0 mm | 0%    │               0.0 mm | 0%    │
└──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘
                                                       ┌─────────────┐                                                       
┌──────────────────────────────┬───────────────────────┤  Fri 23 Sep ├───────────────────────┬──────────────────────────────┐
│            Morning           │             Noon      └──────┬──────┘     Evening           │             Night            │
├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤
│     \   /     Sunny          │     \   /     Sunny          │     \   /     Sunny          │     \   /     Clear          │
│      .-.      +24(26) °C     │      .-.      +29(32) °C     │      .-.      +25(27) °C     │      .-.      +22(25) °C     │
│   ― (   ) ―   ↘ 4-5 km/h     │   ― (   ) ―   ↘ 8-9 km/h     │   ― (   ) ―   → 10-17 km/h   │   ― (   ) ―   ↘ 13-23 km/h   │
│      `-’      10 km          │      `-’      10 km          │      `-’      10 km          │      `-’      10 km          │
│     /   \     0.0 mm | 0%    │     /   \     0.0 mm | 0%    │     /   \     0.0 mm | 0%    │     /   \     0.0 mm | 0%    │
└──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘
                                                       ┌─────────────┐                                                       
┌──────────────────────────────┬───────────────────────┤  Sat 24 Sep ├───────────────────────┬──────────────────────────────┐
│            Morning           │             Noon      └──────┬──────┘     Evening           │             Night            │
├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤
│    \  /       Partly cloudy  │    \  /       Partly cloudy  │    \  /       Partly cloudy  │    \  /       Partly cloudy  │
│  _ /"".-.     +23(25) °C     │  _ /"".-.     +27(28) °C     │  _ /"".-.     +24(26) °C     │  _ /"".-.     21 °C          │
│    \_(   ).   ↓ 14-17 km/h   │    \_(   ).   ↘ 14-16 km/h   │    \_(   ).   ↓ 19-24 km/h   │    \_(   ).   ↓ 12-21 km/h   │
│    /(___(__)  10 km          │    /(___(__)  10 km          │    /(___(__)  10 km          │    /(___(__)  10 km          │
│               0.0 mm | 0%    │               0.0 mm | 0%    │               0.0 mm | 0%    │               0.0 mm | 0%    │
└──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘
Location: 熊本県, 日本 [32.6450475,130.6341345]

Follow @igor_chubin for wttr.in updates

curlが入っていない場合

brewのインストール https://brew.sh/index_ja

  • ターミナル上でそのコマンドを実行

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

  • インストールは自動で進みますが、途中でパスワードを聞かれます。ここではMacにログインする際のパスワードを入力しましょう。

brewを使ってcurlをインストール

brew install curl

Windows 10には、2018年のWindows 10 Ver.1803(RS3)からcurl.exeコマンドが標準で付属しています。

C:\WINDOWS\system32\curl.exe

Input: Design of the URL

image

https://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/cid/2244/SDF?record_type=3d

https://pubchem.ncbi.nlm.nih.gov/rest/pug /input /operation /output /operation_options
https://pubchem.ncbi.nlm.nih.gov/rest/pug /compound/cid /2244 /SDF ?record_type=3d

Operation

Operation Format
2244
1,2,3,4,5
+Operation Format
MolecularFormula
MolecularWeight
CanonicalSMILES
IsomericSMILES
InChI
InChIKey
IUPACName
XLogP
ExactMass
MonoisotopicMass
TPSA
Complexity
Charge
HBondDonorCount
HBondAcceptorCount
RotatableBondCount
HeavyAtomCount
IsotopeAtomCount
AtomStereoCount
DefinedAtomStereoCount
UndefinedAtomStereoCount
BondStereoCount
DefinedBondStereoCount
UndefinedBondStereoCount
CovalentUnitCount
Volume3D
XStericQuadrupole3D
YStericQuadrupole3D
ZStericQuadrupole3D
FeatureCount3D
FeatureAcceptorCount3D
FeatureDonorCount3D
FeatureAnionCount3D
FeatureCationCount3D
FeatureRingCount3D
FeatureHydrophobeCount3D
ConformerModelRMSD3D
EffectiveRotorCount3D
ConformerCount3D

/property/InChI,XLogP,TPSA

Output Format

Output Format Description
XML standard XML, for which a schema is available
JSON JSON, JavaScript Object Notation
JSONP JSONP, like JSON but wrapped in a callback function
ASNB standard binary ASN.1, NCBI’s native format in many cases
ASNT NCBI’s human-readable text flavor of ASN.1
SDF chemical structure data
CSV comma-separated values, spreadsheet compatible
PNG standard PNG image data
TXT plain text
operation_options
?name_type=word
?identity_type=same_connectivity
?StripHydrogen=true
?Threshold=99
?sid=104169547,109967232
?list_return=listkey
?sid=listkey&listkey=12345678910&listkey_start=0&listkey_count=1000
?&listkey_start=0&listkey_count=10
?sids_type=active
?sids_type=standardized&list_return=listkey
?cids_type=same_parent
?sids_type=standardized&list_return=flat
?sids_type=standardized&list_return=grouped

完全一致のみを返す構造を指定する方法

レコード検索

Full Records

Identifier

Name

Structure Identity

Images

Compound Property Tables

Synonyms

Description

SIDS / CIDS / AIDS

Assay Data

Assay Description

Assay Targets

Assay Summary

Assay Dose-Response

Activity Name

Access to PubChem Genes

Gene ID

Gene Symbol

Gene Synonym

Gene Summary

Pathways

Proteins

Protein Accession

Protein Synonym

Protein Summary

Assays

Bioactivities

PubChem Pathways

pathway Accession

Pathway Summary

Compounds

Genes

Proteins

PubChem Taxonomies

Taxonomy ID

Taxonomy Synonym

Taxonomy Summary

Assays and Bioactivities

PubChem Cell Lines

Cell Line Accession

Cell Line Synonym

Cell Line Summary

Assays and Bioactivities

例) アスピリンのアッセイデータを取得する。

  • curl -L https://pubchem.ncbi.nlm.nih.gov/rest/pug/substance/name/aspirin/cids/TXT?list_return=grouped > ./aspirin.cids.txt
...
2244
2244
3434975
3434975
12280114
12280114
12280114
24847961
24847962
24847963
145904
...
  • curl -L https://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/cid/2244/aids/TXT?aids_type=active > ./cid2244aids.txt
...
321895
321896
323716
323717
328210
338333
338335
...
  • curl -L https://pubchem.ncbi.nlm.nih.gov/rest/pug/assay/aid/182665/CSV > ./aid182665.csv
PUBCHEM_RESULT_TAG,PUBCHEM_SID,PUBCHEM_CID,PUBCHEM_EXT_DATASOURCE_SMILES,PUBCHEM_ACTIVITY_OUTCOME,PUBCHEM_ACTIVITY_SCORE,PUBCHEM_ACTIVITY_URL,PUBCHEM_ASSAYDATA_COMMENT,Standard Type,Standard Units,Activity Comment
RESULT_TYPE,,,,,,,,STRING,STRING,STRING
RESULT_DESCR,,,,,,,,Standardized activity type (e.g. IC50 rather than Ic-50/Ic50/ic50/ic-50),Selected units for 'Standard Type': e.g. concentrations are in nM,Additional comments
1,103164874,2244,CC(=O)OC1=CC=CC=C1C(=O)O,Active,,,Potential missing data,Inhibition,%,Active
2,103183760,13392299,C1=CC(=CC=C1C2=NC(=C(O2)C3=COC=C3)CC(=O)O)Cl,Unspecified,,,Potential missing data,Inhibition,%,
3,103184577,13773145,CCCCC1=NC(=C(O1)C2=CC=CO2)CC(=O)OCC,Unspecified,,,Potential missing data,Inhibition,%,

Classification

XRefs

  • 部分構造、類似性、様々な部分一致(原子の接続は同じだが立体化学は未指定など)など、より高度な構造検索が利用できます。PUG RESTでは、分子式検索もこのカテゴリーに入ります。

  • これらの検索では、PubChemデータベース全体を検索するのに時間がかかるため、先に述べたPUG RESTリクエストの30秒以内に結果が出ない可能性があります。

  • これを回避するために、PUG RESTは「非同期」操作と呼ばれるものを使用しており、検索を開始するときにジョブチケットのようなものである要求識別子を取得します。

  • そして、検索が終了したかどうかを定期的に(例えば5-10秒ごとに)チェックし、終了していれば結果を取得します。

Structure Search -- 結果が帰ってこない? --

2段階のプロセスで検索結果を得ます。

  1. RESTリクエストを送信し、要求識別子を取得
{
  "Waiting": {
    "ListKey": "3734994328758159440",
    "Message": "Your request is running"
  }
}
  1. 要求識別子を利用し、結果を取得

Fast (Synchronous) Structure Search -- おすすめ --

高速検索(同期)

Example Scripts

image

RESTful Interface

curl -L -H "Accept: text/rdf" -o CID2244.rdf http://rdf.ncbi.nlm.nih.gov/pubchem/compound/CID2244

Query RESTful Interface

PubChem FTP

  1. About をクリック
image
  1. Downlod [From the PubChem FTP site](https://pubchemdocs.ncbi.nlm.nih.gov/downloads#_3-2) をクリック
image
image
  1. 例えば、 https://ftp.ncbi.nlm.nih.gov/pubchem/Compound/CURRENT-Full/SDF/ にアクセスすると、下図が表示される。

    • 必要に応じて、各種ソフトでデータをダウンロードすることができる。
image

wget でダウンロードする例

bash-3.2$ wget https://ftp.ncbi.nlm.nih.gov/pubchem/Compound/CURRENT-Full/SDF/Compound_152500001_153000000.sdf.gz
--2022-09-13 10:07:06--  https://ftp.ncbi.nlm.nih.gov/pubchem/Compound/CURRENT-Full/SDF/Compound_152500001_153000000.sdf.gz
ftp.ncbi.nlm.nih.gov (ftp.ncbi.nlm.nih.gov) をDNSに問いあわせています... 130.14.250.7, 165.112.9.230
ftp.ncbi.nlm.nih.gov (ftp.ncbi.nlm.nih.gov)|130.14.250.7|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 74473800 (71M) [application/x-gzip]
`Compound_152500001_153000000.sdf.gz' に保存中

Compound_152500001_153000000.sdf.gz           100%[================================================================================================>]  71.02M   861KB/s 時間 94s      

2022-09-13 10:08:42 (770 KB/s) - `Compound_152500001_153000000.sdf.gz' へ保存完了 [74473800/74473800]

bash-3.2$ 
  1. ファイルの確認
bash-3.2$ gzcat Compound_152500001_153000000.sdf.gz | less
  1. ファイルの表示
152500001
  -OEChem-08292205122D

107114  0     1  0  0  0  0  0999 V2000
    6.0365   -0.8200    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    8.5745   -0.3156    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    7.3183   -2.5779    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    4.0365   -0.8235    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   10.2991   -1.4937    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    5.0000    4.6130    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   13.2688   -1.3586    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   14.5549   -2.4362    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    7.3122    0.9422    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
    7.3122    2.5517    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
    5.5000    0.7470    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
    4.6340    2.2470    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
    6.0000    3.6130    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
    7.0365   -0.8183    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0
    7.6229   -0.0083    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0
    7.6257   -1.6263    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0
    8.5762   -1.3156    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0
    5.5380   -1.6869    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0
    4.5380   -1.6887    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0
    6.0395   -2.5521    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.0395   -2.5556    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    5.5410   -3.4190    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.5410   -3.4207    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    9.3863   -1.9020    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    7.8958    1.7470    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    6.3660    1.2470    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    6.3660    2.2470    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   11.1091   -2.0801    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    5.5000    2.7470    0.0000 C   0  0  3  0  0  0  0  0  0  0  0  0
:

rsync で取得する例 -- 負荷がかかるので、今は試さないで下さい。 --

rsync -Pav ftp.ncbi.nlm.nih.gov::pubchem/Compound/CURRENT-Full/SDF/\*.gz pubchem/

Clone this wiki locally