输入数据处理
由于样本量大不能直接用EXCEL打开,选择使用R进行初步的数据处理,得到符合模型输入的数据
将ASV表转置:
input='asv_table.rename.txt'
df<-read.delim(input,header = T,row.names = 1,check.names=F)
dt <- t(df)
write.csv(dt, "asv_table.rename_t.csv")
将标签插入到转置后的ASV表中
准备标签文件group(三种标签):
#读入标签
group <- read.csv("asv_table.rename.group.csv",header = T,row.names = 1,check.names=F)
merged <- cbind(dt, group) #将dt与group合并
merged <- cbind(dt, group$HD)#将dt与group中的HD列合并
write.csv(merged, "asv_table.rename_t.lable.csv")
参考:R语言把几列数据合并
作为模型输入读入后,删除其他标签
虽然建模时可以选择哪一列作为标签,那些列作为自变量,但由与ASV数量较多,选取时操作不够简便,故直接删除掉用不到的标签
library(dplyr)
data <- read.csv('asv_table.rename_t.lable.csv',header=T, row.names = 1)
#按列名删除多列-使用dplyr中的select函数
data <- select(data,-c(Location,Time)) #以HD作为标签
参考:R语言删除矩阵指定列
随机森林建模
先不使用十折交叉验证-先建一个模型
RF <- randomForest(HD~.,data,importance=T,ntree=1500,mtry=13)
。。。未完待续