TCGA 数据下载工具 -- gdc-client

下载安装

https://gdc.cancer.gov/access-data/gdc-data-transfer-tool

根据自己的机器选择版本,我使用的是服务器因此选择Linux版的:


# download
wget https://gdc.cancer.gov/files/public/file/gdc-client_v1.6.0_Ubuntu_x64-py3.7_0.zip
# unzip
unzip gdc-client_v1.6.0_Ubuntu_x64-py3.7_0.zip
# version
./gdc-client --version

解压所得的gdc-client就是下载工具了,可直接使用。但使用只能使用相对路径或绝对路径,不方便,因此我把其绝对路径在~/.bashrc里设置别名alias:

alias gdc-client='/sibcb2/bioinformatics2/wangjiahao/software/gdc-client'

这样无论你在哪个路径你都能直接使用gdc-client命令了。

使用方法

使用方法非常简单

gdc-client download -m gdc_manifest.txt  -d out_directory

-m,只需要我们提供一个文件,就是从GDC网站下载的待下载文件的注释信息文件gdc-client软件根据这个文件的信息去给你从GDC里捞文件。

-d,文件下载的输出文件夹,默认当前路径,给一个不存在的路径会报错!

接下来就是要解决我们该如何从GDC数据库获得我们想下载的文件对应的注释信息了

方法并不算繁琐,我以最简单的一个样本的数据下载为例

使用示例

以样本TCGA-2Y-A9H4-01A为例,在GDC例输入该样本名,检索结果如下:

假设我们想要下载转录组数据,则需要点击File Counts by Data Category栏的Transcriptome Profiling5,表示有5个转录组数据文件:


接下来我们想把这五个样本全部下载下来,只需要点击下图中的Manifest即可获得这五个数据的下载信息。

我发现每次下载的Manifest命名格式都是gdc_manifest.date.txt,因此有时需要重命名,这里我命名为gdc_manifest_test.txt

看一下文件里有啥:

[wangjiahao@submit3 test]$ cat gdc_manifest_test.txt
id  filename    md5 size    state
7f240aff-7db6-4f3a-85fc-ba75262ad8d2    455502e4-9e9b-48b5-a6be-1a722de47909.mirbase21.isoforms.quantification.txt  9d1de0ee3b613fc06f3b1a7c310a156b    336867  released
50aedc81-a2e9-497b-9163-6d216819b850    9dd14a4d-a863-4994-b5c6-b5bec92ff818.FPKM-UQ.txt.gz e0a665df8663dd95f19c80262eb90251     478600 released
7726c67e-fa7b-4ea6-bb0b-62173aee8a4d    9dd14a4d-a863-4994-b5c6-b5bec92ff818.FPKM.txt.gz    9e66f3f276b4b42bdddb55b72ecaafc9     476862 released
593d4a08-a05e-42c8-9440-4176fbf177fe    455502e4-9e9b-48b5-a6be-1a722de47909.mirbase21.mirnas.quantification.txt    66e27e0fbbeb4fd0de482c0e1b7194d8    50261   released
1c5adeed-f154-4b7c-902d-779c73c0f256    9dd14a4d-a863-4994-b5c6-b5bec92ff818.htseq.counts.gz    edfc12a5b4b90eada08f40c412714661     242817 released

文件有三列:

  • id
    为该文件的通用唯一识别号 UUID,TCGA中每个文件都有唯一的ID号
  • filename
    文件名,应该也是唯一的叭
  • md5
    既 md5 文件,为确保所下载数据的完整性,就必须有每个文件对应的md5文件来进行检验。除此之外还有一个特别有好的地方,就是即使下载的时候因各种原因下载中断了,你只需要重新运行下载命令就行了,而不用去管其他的,我想着应该就是md5的作用吧
  • size state
    文件大小和状态,可下载的文件状态为released

Manifest文件下载到本地后,就可以使用gdc-client工具下载了:

mkdir out
gdc-client download -m gdc_manifest_test.txt  -d out

数据只有1.59 MB,几秒就下好了:


接下来看一下输出文件的目录:

[wangjiahao@submit3 test]$ tree out
out
├── 1c5adeed-f154-4b7c-902d-779c73c0f256
│   └── 9dd14a4d-a863-4994-b5c6-b5bec92ff818.htseq.counts.gz
├── 50aedc81-a2e9-497b-9163-6d216819b850
│   └── 9dd14a4d-a863-4994-b5c6-b5bec92ff818.FPKM-UQ.txt.gz
├── 593d4a08-a05e-42c8-9440-4176fbf177fe
│   └── 455502e4-9e9b-48b5-a6be-1a722de47909.mirbase21.mirnas.quantification.txt
├── 7726c67e-fa7b-4ea6-bb0b-62173aee8a4d
│   └── 9dd14a4d-a863-4994-b5c6-b5bec92ff818.FPKM.txt.gz
└── 7f240aff-7db6-4f3a-85fc-ba75262ad8d2
    └── 455502e4-9e9b-48b5-a6be-1a722de47909.mirbase21.isoforms.quantification.txt

5 directories, 5 files

可以看出所下载的5个文件都被分别放到一个具有唯一ID(UID)的文件夹里,这样做得好处可能是把每个数据的下载过程分隔开,便于下载以及数据完整性的检测。

到此,数据的下载就结束了~

最后

  • 此外还可以将想下载的数据暂时添加到购物车里(啥?搁着购物呢?),添加的位置:


把所有想下载的添加完后,在上方的购物车里可以生成一个总的manifest文件:

  • 下载速度的话还可以,60G的甲基化数据我花了一天一夜的时间下载好的,平均速度 737 k/s,老铁们的下载速度多少呢?有没有更快的下载方式?

就先说这么多吧~


觉得有用的老铁麻烦点个小爱心~

你可能感兴趣的:(TCGA 数据下载工具 -- gdc-client)