首页 > 其他分享 >R:microtable包随机森林

R:microtable包随机森林

时间:2024-06-13 22:43:17浏览次数:23  
标签:microtable 样本 library dataset sample range 随机 森林

rm(list = ls())
setwd("C:\\Users\\Administrator\\Desktop\\New_microtable") #设置工作目录
library(microeco)
library(magrittr)
library(dplyr)
library(tibble)

feature_table <- read.table('Bac_species.txt', header = TRUE, row.names = 1, sep = "\t", fill = TRUE) #特征表
# 检查并处理缺失值
if (any(is.na(feature_table))) {
  feature_table[is.na(feature_table)] <- 0  # 将缺失值填充为零
}
sample_table <- read.table('sample_table.txt', header = TRUE, row.names = 1, sep = "\t") #样本表
tax_table <- read.table('tax_table_s.txt', header = TRUE, row.names = 1, sep = "\t", fill = TRUE) #分类表

dataset <- microtable$new(sample_table = sample_table,
                          otu_table = feature_table, 
                          tax_table = tax_table)

dataset$tidy_dataset() #整理和预处理数据集
#数据清洗:移除或填补缺失值、异常值等。
#数据标准化:确保数据符合一定的格式,比如统一的数据类型。
#数据整合:如果有多个表格,确保它们之间的链接正确无误。

dataset$sample_sums() %>% range #计算并查看样本总数的范围

dataset$rarefy_samples(sample.size = 1000000) #执行重采样,标准化样本中的测序深度

dataset$sample_sums() %>% range #计算并查看标准化后样本总数的范围

dataset$cal_abund() #计算每个分类等级的分类群丰度

t1 <- trans_diff$new(dataset = dataset, method = "rf", group = "Group", taxa_level = "Species")

write.table(t1$res_diff, file = "res_rf.txt", sep = "\t", quote = FALSE, row.names = TRUE, col.names = TRUE)

library(ggplot2)
library(gridExtra)

# 定义分组的颜色
group_colors <- c("B73" = "#8FC9E2", "Mo17" = "#ECC97F")  # 可以根据需要选择颜色

# 生成条形图并设置填充色和边框色
g1 <- t1$plot_diff_bar(use_number = 1:20, width = 0.8, group_order = c("B73", "Mo17")) +
  scale_fill_manual(values = group_colors) +  # 设置条形填充颜色
  scale_color_manual(values = group_colors) +  # 设置条形边框颜色
  theme(legend.position = "none",axis.text.x = element_text(size = 12, face = "bold")
        ,text = element_text(family = "Times New Roman"))

# 生成丰度图并设置填充色和边框色
g2 <- t1$plot_diff_abund(use_number = 1:20, group_order = c("B73", "Mo17"), select_taxa = t1$plot_diff_bar_taxa) +
  scale_fill_manual(values = group_colors) +  # 设置丰度图填充颜色
  scale_color_manual(values = group_colors) +  # 设置丰度图边框颜色
  theme(axis.text.y = element_blank(), axis.ticks.y = element_blank(),axis.text.x = element_text(size = 12, face = "bold")
        ,text = element_text(family = "Times New Roman"))

# 生成并排显示的图形对象
combined_plot <- gridExtra::grid.arrange(g1, g2, ncol = 2, nrow = 1, widths = c(2, 1.7))
# 保存图形为 PNG 格式
ggsave("Species_rf.png", plot = combined_plot, width = 10, height = 6, dpi = 800)

 

标签:microtable,样本,library,dataset,sample,range,随机,森林
From: https://www.cnblogs.com/wzbzk/p/18246906

相关文章

  • 北斗巡检终端 | 保护区森林巡检终端应用方案
    在广袤无垠的自然保护区中,森林作为地球之肺,其健康与繁荣直接关系到生态平衡和生物多样性。随着人类活动的日益频繁,森林面临着前所未有的挑战,如非法砍伐、病虫害侵袭、火灾等风险。为了守护这片绿色宝藏,我们迫切需要一种高效、智能的巡检手段。这款顶坚北斗巡检终端不仅集成了......
  • 机器学习算法:随机森林算法
    在机器学习中,随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定。LeoBreiman和AdeleCutler发展出推论出随机森林的算法。而"RandomForests"是他们的商标。这个术语是1995年由贝尔实验室的TinKamHo所提出的随机决策森林(randomde......
  • kettle从入门到精通 第六十八课 ETL之kettle kettle随机数生成的一些方案
    1、在做ETL数据抽取的时候,会用到生成随机数的功能,今天我们一起来学习下如何生成随机数据。如下图所示 2、将生成随机数拉倒画布即可,然后设置字段名称和选择合适的类型,如下图所示:类型:随机数字:生成一个介于0和1之间的随机数随机整数:生成一个随机的32-bit整数随机字符串:基......
  • R:microtable包线性判别分析LEfSe
    rm(list=ls())setwd("C:\\Users\\Administrator\\Desktop\\New_microtable")#设置工作目录library(microeco)library(magrittr)library(dplyr)library(tibble)feature_table<-read.table('Bac_species.txt',header=TRUE,row.names=......
  • 具有模态指标的随机子空间识别【包括一致模态指标和模态参与因子】(Matlab代码实现)
    ......
  • window下的随机数与随机数种子——[MTCTF 2021]Random
    题目 Die  IDA main函数 dword_1B336C 与 v7 ,是两个记录循环次数的计数器红框:加密逻辑,很简单绿框:成功条件,需要满足两个,第一个是 dword_1B336C==43 ,当 dword_1B336C 不等于43的时候进入else,然后需要满足条件 input[v9]==key[v8] 与 v7==42  key......
  • 基于matlab的动力学有限元期刊文章(关节接触界面的随机建模和更新)---论文复现
      stochasticmodellingandupdatingofajointcontactinterface是发表在mechanicalsystemsandsignalprocessing上的一篇较高质量文章。笔者成功复现该文章,效果优异,配备原文,方便学习使用,适合该方向的学习者。  接头和机械连接中接触界面的动态性能对装配结构的......
  • 颜色找茬-0-255随机底色
      代码展示'''颜色找茬:找出不同颜色的色块AI对话大师,阿夏2025年6月7日'''fromPILimportImage,ImageDrawimportrandompath=r'C:\Users\jg2yXRZ\OneDrive\桌面\辨认色彩图'forxxinrange(10000):r=random.randint(0,255)......
  • R:microtable包计算相对丰度堆叠柱状图
    rm(list=ls())setwd("C:\\Users\\Administrator\\Desktop\\New_microtable")#设置工作目录library(microeco)library(magrittr)library(dplyr)library(tibble)feature_table<-read.table('Bac_genus.txt',header=TRUE,row.names=1......
  • 1689D Lena and Matrix (曼哈顿距离转切比雪夫距离/随机化/线段树)
    记一道有趣的题:P题意这道题很有意思。给定地图上若干个黑色的点,求这样一个点的坐标,满足其到图中任何一个黑色点的最大曼哈顿距离最小。\(max(|a-x_i|+|b-y_i|),i=1,2..k\)方法一曼哈顿距离和且比雪夫距离可以互相转化,曼哈顿转切比雪夫如下:\((x,y)\to(x+y,x-y)\)转化后......