Python&R LEfSe 分析

Python&R LEfSe 分析软件安装与路径添加 在涉及到物种或基因组间差异分析的方法中,LEfSe是目前常见的方法。LEfSe实现的方式主要有在线分析和本地分析,在线分析会受到网络及其他因素影响,因而速度可能极慢。本地分析可基于Windows或Linux系统,调参更加灵活。本文以Windows系统为例,向大家展示如何在自己的本本上运行LEfSe,再也不用去求公司了…… 首先,我们要安装好Pyhthon(2.7版本)和R(…

大家好,又见面了,我是你们的朋友全栈君。

软件安装与路径添加

 在涉及到物种或基因组间差异分析的方法中,LEfSe是目前常见的方法。LEfSe实现的方式主要有在线分析和本地分析,在线分析会受到网络及其他因素影响,因而速度可能极慢。本地分析可基于Windows或Linux系统,调参更加灵活。本文以Windows系统为例,向大家展示如何在自己的本本上运行LEfSe,再也不用去求公司了……
 首先,我们要安装好Pyhthon(2.7版本)和R(安装方法不再赘述),然后把软件的安装路径添加到电脑的系统环境变量,如R我是安装在“D:\Rnew\R-3.4.4”,那么我复制这个路径,如下图:
在这里插入图片描述
 然后鼠标右击“我的电脑”→“属性”

在这里插入图片描述
 接下来是“高级系统设置”
在这里插入图片描述
 接下来是双击“环境变量”
在这里插入图片描述
 然后双击“环境变量”,我们会看到两个“Path”。
在这里插入图片描述
 为保证不出意外,我们分别对两个Path进行操作。以上面窗口的Path为例,双击Path,然后“新建”(我的系统为win10,win10以下的系统貌似是直接双击Path就可以操作),然后把R的安装路径粘贴在新建的框内,然后确定,细心的朋友会发现我还把路径“D:\Rnew\R-3.4.4\bin\x64”加入了“环境变量”,是的,我们需要把这两个路径都加入进来。
在这里插入图片描述
 我们检测一下,看R是否成功加入到Path中,我们打开CMD命令行模式,然后输入R→回车键。如下图,说明我们的操作已经成功。
在这里插入图片描述
 接下来是把Python也加进来,操作方法与R一样,
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
 同样的,这里在CMD命令行中输入“python”,然后回车键。如下图,说明python添加到Path成功。
在这里插入图片描述

模块与包的安装

 上述的操作后,我们已经把Python和R成功加入到Path中,在用这两个做数据分析时,我们要安装别人已经写好的模块与包(packages)。LEfSe主要以Python运行为主,但要调用到R的几个packages。首先,对于python,我们需要安装“numpy”、“rpy2”与“matplotlib”三个模块,在R中需要安装好几个packages,如mvtnorm、coin等。我们先安装Python的模块,在数据分析过程中提示未找到“packages”时,我们再用R安装对应的packages。下面以numpy模块安装为例:在CMD命令行中运行:

pip install D:\python\numpy-1.14.1-cp27-none-win_amd64.whl

等待安装完毕,这里可以分别打开3个CMD,分别安装“numpy”、“rpy2”与“matplotlib”(对于模块的安装,我这里是把模块下载到电脑上,也可以联网安装,农村不仅路滑,网也不好,所以下载→本地安装)。

在这里插入图片描述
 模块安装好后,我们在CMD命令行中输入python,然后回车键,然后输入:

import numpy

回车键。如下图,说明numpy被成功安装,切记还有rpy2与matplotlib也要安装!
在这里插入图片描述

这一步非常重要,我们打开系统环境变量,然后”新建”,变量名为“R_USER”,变量值为某一个路径即可,然后“确定”

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
 至此,准备就绪,我们需要去下载LEfSe分析的代码:https://bitbucket.org/nsegata/metaphlan/wiki/MetaPhlAn_Pipelines_Tutorial

在这里插入图片描述
然后解压如下图的代码:

在这里插入图片描述
得到如下文件:
在这里插入图片描述
 到这里前期工作准备得差不多了,我们需要对物种或者基因的数据进行格式整理:第一列为物种名字,第一行为样本重复(切记要灵活运用、操作):

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

开始做分析

 打开CMD,把运行路径切换到待分析数据所在路径:我的数据在“D:\yingyong”,

D:
cd D:\yingyong

具体操作如下图。
在这里插入图片描述
 代码路径为“D:\lefse”,第一步:

D:\lefse\format_input.py hh.txt lefse.in.txt -c 1 -o 100000

在这里插入图片描述
 第二步:

D:\lefse\run_lefse.py lefse.in.txt lefse.out.txt -l 3

在这里插入图片描述
 第三步:开始画图,

D:\lefse\plot_res.py lefse.out.txt lda.pdf --format pdf

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
 第四步:还是图,

D:\lefse\plot_cladogram.py lefse.out.txt yuan.pdf --format pdf --labeled_start_lev 1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
 那么,LEfSe分析的常见图已经出来,对于biomarker在每个组中的相对丰度,这里不再演示,算是留个悬念,有需要的朋友可以自行探索或加入文后的QQ群→讨论。
 对于上面的图,我们会发现物种名没有完全显示,这里我们推荐用AI软件(Adobe Illustrator)进行调整(是调整,不是修改!),对于LEfSe分析操作,需要自己灵活操作,照猫画虎绝对是不行的。对于图的解读可以参考已经发表的诸多papers。为加快初学者分析数据、绘图的速度,我们创建了一个QQ群:335774366。欢迎有兴趣的朋友加入→指导。
 2019年了,祝各位朋友:“猪”事顺利→做一只特立独行的猪?。
声明:以上内容仅为作者个人理解,有不对的地方,欢迎指正。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131286.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 临时关闭Mysql ONLY_FULL_GROUP_BY

    临时关闭Mysql ONLY_FULL_GROUP_BY

    2021年11月8日
    53
  • python进阶(25)协程「建议收藏」

    python进阶(25)协程「建议收藏」协程的定义协程(Coroutine),又称微线程,纤程。(协程是一种用户态的轻量级线程)作用:在执行A函数的时候,可以随时中断,去执行B函数,然后中断B函数,继续执行A函数(可以自动

    2022年8月7日
    3
  • 五笔结构与识别码_五笔打字识别码怎么区分

    五笔结构与识别码_五笔打字识别码怎么区分4.末笔字型识别码表末笔笔画只有五种,字型信息只有三类,因此末笔字型交叉识别码只有15种如表4-1所示。表4-1末笔字型识别码表左右型1上下型2杂合型3横111G一12F二

    2022年8月3日
    11
  • Landsat 8 地表反射率数据介绍—— Landsat 8 Surface Reflectance Tier 1

    Landsat 8 地表反射率数据介绍—— Landsat 8 Surface Reflectance Tier 1USGSLandsat8SurfaceReflectanceTier1该数据集是来自Landsat8OLI/TIRS传感器的经大气校正的表面反射率。图像包含4个可见光和一个近红外(VNIR)波段和2个短波红外(SWIR)波段两个热红外。经过正射校正后的表面反射率,以及2个热红外经过正交校正后的亮度温度这些数据已使用LaSRC进行了大气校正,包括使用CFMASK生成的云,阴影…

    2022年7月23日
    36
  • JQuery.validationEngine表单验证插件

    JQuery.validationEngine表单验证插件一、说明JQuery.validationEngine表单验证控件功能强大,自带了样式显示模式:1.字符类型:非空验证、最大长度、最小长度、相等判断、数字和空格、数字和英文字母2.数字类型:数字、整数、最大值、最小值3.日期类型:日期(yyyy-MM-dd/yyyy/MM/dd等)、日期+时间、最小日期、最大日期、日期时间段4.业务字段:url、email、phone、ipv

    2022年10月3日
    0
  • 共享内存同步机制_共享内存通信机制

    共享内存同步机制_共享内存通信机制共享内存是SystemV版本的最后一个进程间通信方式。共享内存,顾名思义就是允许两个不相关的进程访问同一个逻辑内存,共享内存是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常为同一段物理内存。进程可以将同一段物理内存连接到他们自己的地址空间中,所有的进程都可以访问共享内存中的地址。如果某个进程向共享内存写入数据,所做的改动将立即影响到可以访问同一段共享内存的任…

    2022年10月23日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号