bioinformatics小技巧

2024-02-08 04:30
文章标签 技巧 bioinformatics

本文主要是介绍bioinformatics小技巧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 1. 软件安装
        • 1.1 linux上python2的安装
        • 1.2 Mercurial 安装及使用
        • 1.3 tRNAscan的安装和使用
        • 1.4 Linux上安装miniconda
    • 2.数据下载
        • 2.1 linux上通过ftp下载一个文件夹下的全部文件
        • 2.2 GEO数据库数据下载
    • 3.操作系统
        • 3.1 Windows下将R设置为环境变量。
        • 3.2 Linux 下怎样快速查看一个超大文件夹的文件总大小?
        • 3.3 调节VNC Viewer的分辨率
        • 3.4 服务器上的jupyter notebook找不到服务器怎么办?
        • 3.5 服务器上如何使用matlab的可视化界面?
    • 4. Perl
        • 4.1 查看perl中已安装的包:
    • 5. Python
        • 5.1 ImportError: /lib64/libm.so.6: version `GLIBC_2.23' not found
        • 5.2 argparse模块用法实例详解
    • 6. 宏基因组分析流程技巧
        • 6.1 MetaPhlAn2数据库安装
        • 6.2 metagenemark的使用
        • 6.3 微生物组与PCA
        • 6.4 微生物组lefse分析
    • 7. R语言使用技巧
        • 7.1 根据两列来合并表格
        • 7.2 R语言绘图
        • 7.3 网络构建与分析初探
    • 8. 序列分析技巧
        • 8.1 序列平均长度和长度分布统计

1. 软件安装

1.1 linux上python2的安装

Installing a custom version of Python 2:
https://help.dreamhost.com/hc/en-us/articles/115000218612-Installing-a-custom-version-of-Python-2

1.2 Mercurial 安装及使用

参考:https://blog.csdn.net/moonspiritacm/article/details/80863421

1.3 tRNAscan的安装和使用

参考:https://www.plob.org/article/7905.html

1.4 Linux上安装miniconda

参考:https://docs.conda.io/projects/conda/en/latest/user-guide/install/linux.html

2.数据下载

2.1 linux上通过ftp下载一个文件夹下的全部文件

How to recursively download a folder via FTP on Linux [closed]
https://stackoverflow.com/questions/113886/how-to-recursively-download-a-folder-via-ftp-on-linux
代码为:

wget -r -nH --cut-dirs=5 -nc ftp://user:pass@server//absolute/path/to/directory

测试案例:

wget -r -nH --cut-dirs=5 -nc ftp://ftp.ebi.ac.uk/pub/databases/chembl/KinaseSARfari/latest/
2.2 GEO数据库数据下载

GEO 数据介绍及在线下载:https://www.jianshu.com/p/74d570cb8c29
Download Geo Tar File Automatically From Linux/Unix:https://www.biostars.org/p/61329/

3.操作系统

3.1 Windows下将R设置为环境变量。

参考:https://stackoverflow.com/questions/47539125/how-to-add-rtools-bin-to-the-system-path-in-r

library(devtools)
Sys.setenv(PATH = paste("F:/software/R-3.6.1/bin", Sys.getenv("PATH"), sep=";"))
Sys.setenv(BINPREF = "F:/software/R-3.6.1/mingw_$(WIN)/bin/")
3.2 Linux 下怎样快速查看一个超大文件夹的文件总大小?

参考:https://www.v2ex.com/t/515218

 du -h --max-depth=1
3.3 调节VNC Viewer的分辨率
xrandr -s 1360x768
3.4 服务器上的jupyter notebook找不到服务器怎么办?
ifconfig

输出结果中包含:inet 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255

jupyter notebook --no-browser --ip=192.168.1.2
3.5 服务器上如何使用matlab的可视化界面?
ssh -X node02  #以可视化界面的方式连接到node02
matlab         #启动matlab

4. Perl

4.1 查看perl中已安装的包:
find `perl -e 'print "@INC"'` -name '*.pm' -print

5. Python

5.1 ImportError: /lib64/libm.so.6: version `GLIBC_2.23’ not found
conda create -n tf-cpu tensorflow

安装了python3.6.10和tensorflow-base-2.2.

5.2 argparse模块用法实例详解

参考:https://zhuanlan.zhihu.com/p/56922793

6. 宏基因组分析流程技巧

6.1 MetaPhlAn2数据库安装

参考:https://groups.google.com/g/metaphlan-users/c/7TfY_h-SELQ

#下载数据库(已下载,位于/home1/jialh/tools/metaphlan2/metaphlan2/metaphlan2_databases/mpa_v20_m200.tar)
https://bitbucket.org/biobakery/metaphlan2/downloads/
#解压
tar -xvf mpa_v20_m200.tar
#再解压
bzip2 -dk mpa_v20_m200.fna.bz2
#建立bowtie2的索引
bowtie2-build --threads 4 mpa_v20_m200.fna mpa_v20_m200
6.2 metagenemark的使用

参考:
(1)metagenemark(注意-m后面有分隔):https://www.jianshu.com/p/f9b085e30d94
(2)MetaGeneMark秘钥更新:https://www.jianshu.com/p/bff284d04c3e

6.3 微生物组与PCA

参考:223.主成分分析PCA
https://blog.csdn.net/woodcorpse/article/details/106866501

6.4 微生物组lefse分析

参考:https://github.com/biobakery/biobakery/wiki/lefse
注意事项:
(1)lefse适用于python 2.7环境。
(2)部分代码名称发生变化,如下图所示:
在这里插入图片描述
工作目录:/home1/jialh/mNetwork/MNDnetwork/PRJEB17784/lefse

lefse-format_input.py 03biom_transform.txt 03biom_transform.in -c 2 -s -1 -u 1 -o 1000000run_lefse.py -l 3 03biom_transform.in 03biom_transform.reslefse-plot_res.py --dpi 300 --feature_font_size 12 03biom_transform.res 03biom_transform.png

注意可能的报错:

AttributeError: Unknown property axis_bgcolor

原因:matplotlib == 2.2.0 起把部分功能函数移除了,我们需要回退 matplotlib 版本。
解决办法: pip install matplotlib==1.5
参考:https://www.yuque.com/shenweiyan/cookbook/kefse-install

7. R语言使用技巧

重要学习资源:
(1)Data Analysis(R/Python/数据分析):https://www.zhihu.com/column/Data-AnalysisR
(2)R语言中文社区:https://www.zhihu.com/column/Ryuyanshequ
(3)林茂廷老師《ggplot2 介紹》: https://bookdown.org/tpemartin/minicourse_ggplot2/#section-1.1

7.1 根据两列来合并表格

参考:https://stackoverflow.com/questions/6709151/how-do-i-combine-two-data-frames-based-on-two-columns

7.2 R语言绘图

(1)ggraph的使用

  • 一文读懂 ggraph 的使用: https://r.bio-spring.info/2019/12/04/ggraph-manual/
  • ggraph画网络图: https://www.shenxt.info/zh/post/2019-11-27-r-ggraph/

(2)分层边缘捆绑标签图增加标签(Add labels to Hierarchical Edge Bundling)
参考:

  • 分层边聚合图:https://www.r-graph-gallery.com/311-add-labels-to-hierarchical-edge-bundling.html
  • R数据可视化21:Edge Bundling图: https://www.jianshu.com/p/3990496e7e47
7.3 网络构建与分析初探

(1)Correlation matrix : R function to do all you need: http://www.sthda.com/english/wiki/wiki.php?id_contents=7572
(2)将edge lists转化为有权的邻接矩阵:https://stackoverflow.com/questions/16584948
(3)Correlation between OTUs with SparCC: https://rachaellappan.github.io/16S-analysis/correlation-between-otus-with-sparcc.html

8. 序列分析技巧

8.1 序列平均长度和长度分布统计

参考:https://bioinformatics.stackexchange.com/questions/4911/calculating-read-average-length-in-a-fastq-file-with-bioawk-awk/4918

awk '{if(NR%4==2) {count++; bases += length} } END{print bases/count}' <fastq_file>

参考:https://www.biostars.org/p/72433/

awk 'NR%4 == 2 {lengths[length($0)]++} END {for (l in lengths) {print l, lengths[l]}}' file.fastq

这篇关于bioinformatics小技巧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/689896

相关文章

Java中的雪花算法Snowflake解析与实践技巧

《Java中的雪花算法Snowflake解析与实践技巧》本文解析了雪花算法的原理、Java实现及生产实践,涵盖ID结构、位运算技巧、时钟回拨处理、WorkerId分配等关键点,并探讨了百度UidGen... 目录一、雪花算法核心原理1.1 算法起源1.2 ID结构详解1.3 核心特性二、Java实现解析2.

深度解析Python装饰器常见用法与进阶技巧

《深度解析Python装饰器常见用法与进阶技巧》Python装饰器(Decorator)是提升代码可读性与复用性的强大工具,本文将深入解析Python装饰器的原理,常见用法,进阶技巧与最佳实践,希望可... 目录装饰器的基本原理函数装饰器的常见用法带参数的装饰器类装饰器与方法装饰器装饰器的嵌套与组合进阶技巧

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

如何在Mac上彻底删除Edge账户? 手动卸载Edge浏览器并清理残留文件技巧

《如何在Mac上彻底删除Edge账户?手动卸载Edge浏览器并清理残留文件技巧》Mac上的Edge账户里存了不少网站密码和个人信息,结果同事一不小心打开了,简直尴尬到爆炸,想要卸载edge浏览器并清... 如果你遇到 Microsoft Edge 浏览器运行迟缓、频繁崩溃或网页加载异常等问题,可以尝试多种方

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

mtu设置多少网速最快? 路由器MTU设置最佳网速的技巧

《mtu设置多少网速最快?路由器MTU设置最佳网速的技巧》mtu设置多少网速最快?想要通过设置路由器mtu获得最佳网速,该怎么设置呢?下面我们就来看看路由器MTU设置最佳网速的技巧... 答:1500 MTU值指的是在网络传输中数据包的最大值,合理的设置MTU 值可以让网络更快!mtu设置可以优化不同的网

MySQL JSON 查询中的对象与数组技巧及查询示例

《MySQLJSON查询中的对象与数组技巧及查询示例》MySQL中JSON对象和JSON数组查询的详细介绍及带有WHERE条件的查询示例,本文给大家介绍的非常详细,mysqljson查询示例相关知... 目录jsON 对象查询1. JSON_CONTAINS2. JSON_EXTRACT3. JSON_TA

Spring @RequestMapping 注解及使用技巧详解

《Spring@RequestMapping注解及使用技巧详解》@RequestMapping是SpringMVC中定义请求映射规则的核心注解,用于将HTTP请求映射到Controller处理方法... 目录一、核心作用二、关键参数说明三、快捷组合注解四、动态路径参数(@PathVariable)五、匹配请

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹

Mac备忘录怎么导出/备份和云同步? Mac备忘录使用技巧

《Mac备忘录怎么导出/备份和云同步?Mac备忘录使用技巧》备忘录作为iOS里简单而又不可或缺的一个系统应用,上手容易,可以满足我们日常生活中各种记录的需求,今天我们就来看看Mac备忘录的导出、... 「备忘录」是 MAC 上的一款常用应用,它可以帮助我们捕捉灵感、记录待办事项或保存重要信息。为了便于在不同