zoukankan      html  css  js  c++  java
  • 上传RNA-seq数据到NCBI GEO数据库 | 单细胞RNA数据上传

    上传RNA-seq数据到NCBI GEO数据库 | 单细胞RNA数据上传

     

    SRA - NCBI

    example - NCBI

    要发文章了,审稿时编辑肯定会要求你上传NGS测序数据。

    一般数据都是放在集群,不可能放在个人电脑上,因为有的数据大的吓人(几个T)。

    所以我们就建一个文件夹,然后把所有需要的fastq文件链接到这个文件夹就行了(copy太慢,也太占空间)。

    接下来,NCBI账号申请好了,那就可以直接上传了,用aspera来上传。

    参考: 

    原始数据极速上传NCBI SRA教程 - 比较全面,基本照着做就好了

    使用Aspera从EBI或NCBI下载基因组数据 - 补充aspera的使用方法  

    Tutorial: How to upload your data to the evil Sequence Read Archive (SRA)? - 英文版的,写的比较规范

    你需要下载的是一个叫aspera connect的软件,aspera系列软件太多,别下错了。

    这个奇葩的软件必须要到Linux浏览器里才能有下载链接出现,所以你得有一个Ubuntu系统。下载好了之后再传到集群上。

    注意有个密钥(-i 选项)需要从ncbi上下载,最终上传页面上有。

    NCBI上传数据到SRA,一切都比较顺利,只是需要你自己收集一些信息,填一些表。

    这不是问题,要理解NCBI的数据管理架构!!!

    但是我却遇到了一个天大的问题,直接花费了了我一晚上来解决,所以一定要耐心的看NCBi的错误提示啊。

    1
    Your table upload failed because multiple BioSamples cannot have identical attributes

    就是在你填样品表时,除了一些必备列之外,其他列的信息不能完全一样!!!

    所以我最终的解决方案就是,把样品名(肯定不一样)copy到某一列;或者直接在某一列填1累加的数字,防止重复。

    如果你不好好看报错的话,真的是不知道这一步到底错在哪里。而且大部分老师的样品就是样品名不同,其他的信息都一样,所以看网上求助的人还是很多的,百度基本没有正确的答案。


    之前的教程有误,现在系统的更正一遍。

    1. 注册NCBI账号,https://www.ncbi.nlm.nih.gov/

    打开首页,有个大大的submit图标,注册好,然后sign in。

    选择自己要submit的项目:

    • GenBank:一些组装好的序列,如基因组DNA,各种RNA
    • Sequence Read Archive (SRA):所有的raw data只能上传到这里
    • TSA:Submit computationally assembled, transcribed RNA sequences after submitting unassembled reads to SRA.
    • GEO:Submit RNA-seq, ChIP-seq, and other types of gene expression and epigenomics datasets. 也就是我们常用的基因表达数据,这里可以上传处理后的数据,如count和TPM,FPKM等
    • BioProject & BioSample:这是NCBI的核心组织架构,一篇文章就是一个BioProject,一个project里可以包含多个BioSample

    推荐:在上传所有数据前,先建立BioSample条目,然后创建BioProject,将它们组织起来。【这里只是创建空的条目,后面再传raw data到SRA的时候可以链接到一起】

    如下就是最终的架构:

    我们再看个案例:

    https://www.ncbi.nlm.nih.gov/bioproject/PRJNA558807

    这里就是一篇NC上的文章,所有数据都放在一个project里,项目名字就是文章名字,介绍就是文章摘要。

    Sequence data

    • SRA Experiments 12

    Publications

    • PubMed 1
    • PMC 1

    Other datasets

    • BioSample 12
    • GEO DataSets 1

    SRA数据上传操作细节:

    这里不建议通过GEO上传raw data,直接去SRA数据库。

    不要用ftp,除非你的网速和机器十分优秀和稳定,否则建议用aspera。【我用ftp就一直被ncbi拒绝连接】

    构建好project喝sample之后,填好sra中fastq与sample的对应关系就可以开始上传了。

    注意:填表的时候一个biosample最多只能有256个fastq文件,如果超过了就必须分批上传。【一个biosample可以有多行,但是library必须不同,以作区别】

    1
    ~/.aspera/connect/bin/ascp -i /home/you/.aspera/connect/aspera.openssh -QT -l3m -k1 -d /home/you/project/scRNA-seq/rawData/your.dir/geo_submission_2020Mar30 your.address_from_ncbi

    可以用nohup放在后台运行,  

    关于文件收集:

    1. 建一个文件夹,如geo_submission_2020Mar30
    2. 找到之前流程的file list文件,绝对地址不要老是变
    3. 构建超链接,放入子文件夹
    4. 筛选出特定的样本文件
    1
    2
    cut -f2 all.csv -d, | xargs -I{} ln -s {} ./geo_submission_2020Mar30
    cut -f3 all.csv -d, | xargs -I{} ln -s {} ./geo_submission_2020Mar30

      

    关于处理后文件的上传(基因表达谱):

    案例:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE144980

    不管再大的项目,流程熟了,基本半个工作日就可以完成数据的上传,然后看网速,等全部upload了就可以一键submit。【我限速3M,大概3个小时可以传5G的数据】

    NCBI的数据管理架构非常值得学习。

    ftp的代码:

    1
    2
    3
    4
    5
    6
    open ftp-private.ncbi.nlm.nih.gov
    ncftp -u geoftp ftp-private.ncbi.nlm.nih.gov
     
    cd uploads/ellylab_0zSn02Ma
    lcd /home/lizhixin/project/scRNA-seq/rawData/SAG_HCO.upload.ncbi
    put -R geo_submission_2020Mar30

      

  • 相关阅读:
    JUC并发工具包之Semaphore
    Linux命令
    uWSGI
    数据库 MySQL 练习
    c++
    c++ 初阶
    Git
    MySQl 和 Redis
    MySQL 查询
    MySQL 命令
  • 原文地址:https://www.cnblogs.com/xiaojikuaipao/p/12965065.html
Copyright © 2011-2022 走看看