【发布时间】:2020-11-29 23:16:37
【问题描述】:
我已尝试访问位于 AWS s3 上的癌症基因组图谱 (TCGA) 中的数据。
此代码使用 dask 加载 TCGA 中的所有 .tsv 文件
from dask.distributed import Client
import numpy as np
import dask.dataframe as dd
client = Client() # to see access dast status UI
dfs = dd.read_csv('s3://tcga-2-open/*/*.tsv', sep='\t')
np.max(dfs.chromosome.values)
但是,它的输出是空的:
dfs.chromosome的内容是:
Dask Series Structure:
npartitions=21651
object
...
...
...
...
Name: chromosome, dtype: object
Dask Name: getitem, 43302 tasks
我是否正确使用 dask?
澄清一下,TCGA 数据集中有很多 .tsv 文件,例如这里是其中之一:
$ aws s3 ls s3://tcga-2-open/0000093b-2b25-4781-9c21-7401eeb3ef88/ --no-sign-request
2020-04-29 21:27:41 3483218 TCGA-READ.72029f21-a40c-42f9-80ea-4c3d9d971279.gene_level_copy_number.tsv
实际上有 21,651 个 .tsv 文件:
import s3fs
s3 = s3fs.S3FileSystem(anon=False)
l = s3.glob('s3://tcga-2-open/*/*.tsv')
print(len(l))
【问题讨论】: