当前位置: 首页 > article >正文

Metagenome宏基因组,未识别的物种unclassified


1:"Bacteria|Proteobacteria|Betaproteobacteria|Neisseriales|Neisseriaceae|Kingella"                     2:"Bacteria|Proteobacteria|Betaproteobacteria|Neisseriales|Neisseriaceae|unclassified"

# 未识别到的/未注解到的物种,不可以在OTU/ASV表中直接删掉,识别到的水平 ,例如把上面的第2个,删除成“Bacteria|Proteobacteria|Betaproteobacteria|Neisseriales|Neisseriaceae”,这科水平Bacteria|Proteobacteria|Betaproteobacteria|Neisseriales|Neisseriaceae,代表的是底下所有合并的情况。不允许单独去掉未识别到的那部分。

在进行物种进化树或者cladogram或者GraPhlAn绘制

rm(list=ls())
# devtools::install_github("lch14forever/microbiomeViz")
library(microbiomeViz)

data("SRS014459_Stool_profile")
SRS014459_Stool_profile$V1[14:55]
# 自己数据转成这个

rm(list=ls())
pacman::p_load(tidyverse,microeco,magrittr)
data(dataset)
library(readxl)
library(dplyr)

df <- read.csv("10_lefse.csv")
df <- df[-1,]
df <- t(df)
tax <- df[1,]
medians <- c()
df_count=as.data.frame(df[-1,])
dim(df_count)
df_count[,1:ncol(df)] <- apply(df_count[,1:ncol(df)],2,as.numeric )
median_c <- purrr::map_dbl(df_count,.f = median)
srs$V1
srs <- data.frame(V1=tax,V2=median_c)
srs <- tidyr::separate(
  string = srs$V1,pattern = "|")

tax_table$Kingdom <- paste0(median_ctax_table$Kingdom <- paste0("k__",tax_table$Kingdom)
tax_table$Phylum <- paste0("p__",tax_table$Phylum)
tax_table$Class <- paste0("c__",tax_table$Class)
tax_table$Order <- paste0("o__",tax_table$Order)
tax_table$Family <- paste0("f__",tax_table$Family)
tax_table$Genus <- paste0("g__",tax_table$Genus)

#
tr <- parseMetaphlanTSV(SRS014459_Stool_profile)
p <- tree.backbone(
  tr, 
  size = 0.8,
  layout = "fan" # "rectangular", "slanted", "fan", "circular", "inward_circular", 
  )
p
anno.data <- data.frame(node=c("g__Roseburia",
                               "g__Bacteroides",
                               "o__Clostridiales",
                               "s__Bacteroides_ovatus"),
                        color=c('darkgreen','red',
                                'darkgreen','red'
                                ),
                        stringsAsFactors = FALSE)
p <- clade.anno(p, anno.data)
p


http://www.kler.cn/a/457632.html

相关文章:

  • OWASP ZAP之API 请求基础知识
  • “善弈者”也需妙手,Oclean欧可林:差异化不是说说而已
  • vue cli更新遇到的问题(vue -V查询版本号不变的问题)
  • 自行下载foremos命令
  • 解決當前IP地址僅適用於本地網路
  • OSPF特殊区域(open shortest path first LSA Type7)
  • 【Unity3D】ECS入门学习(五)共享组件 ISharedComponentData
  • MySQL三层B+树能存多少条数据
  • 鸿蒙项目云捐助第三十一讲云捐助项目云前台显示商品列表
  • UDP协议解说
  • RJ45网口模块设计
  • 常见网络攻击场景常被用于测试系统安全性
  • Android中使用AIDL实现进程通信
  • ArrayList和LinkedList的区别、优缺点与使用场景
  • 生产力利器,Mac 系统优选,keychron K10Max 三模键盘体验分享
  • QT-------认识QT
  • 呼叫中心中间件免费体验测试和freeswitch部署方案
  • Linux CPU调度算法
  • 领克Z20结合AI技术,革新自动驾驶辅助系统
  • 无需配置设备,借助GitHub快速编译项目并直接运行!
  • 更新本地 specs 仓库时,出现 SSL 证书验证失败错误 临时解决方案
  • GSM PDU解码在Linux下的C语言实现
  • [oeasy]python055_python编程_容易出现的问题_函数名的重新赋值_print_int
  • ARM64 CSEL条件 B条件一览
  • 【畅购商城】详情页模块之评论
  • STM32完全学习——使用定时器1精确延时