如何编写一个循环来计算重复模拟次数的分数?
How to write a loop to calculate a score for the number of simulations repeatedly?
我需要一个非常简单的循环,从多系统对象中获取每棵系统发育树并计算每棵树的 Ic 并将其放入数据框中。抱歉,如果这么简单,我是 R 的新手,我想不通!
library(apTreeshape)
library(phytools)
multi_trees<- pbtree(b=0.5, d=0, n=200, t=NULL, scale=NULL,
nsim=50, type="continuous", extant.only=TRUE) ### simulate 50 trees stored as multiphylo object
converted_tree <- as.treeshape(multi_trees[[nsim=1]]) ## each tree need to be converted to class treeshapes using following function
Ic <- colless(converted_tree, norm = NULL) #And finally calculate Ic for each tree
循环很简单,所以我假设它是不言自明的。
library(apTreeshape)
library(phytools)
# simulate 50 trees stored as multiphylo object
multi_trees<- pbtree(b=0.5, d=0, n=200, t=NULL, scale=NULL, nsim=50, type="continuous", extant.only=TRUE)
# make data.frame for results
Ic <- matrix(nrow=50, ncol=2)
Ic <- data.frame(Ic)
colnames(Ic) <- c("sim", "Ic")
# loop
for (i in 1:50) {
converted_tree <- as.treeshape(multi_trees[[i]])
Ic[i,1] <- i # get simulation number
Ic[i,2] <- colless(converted_tree, norm = NULL) # get Ic
}
Ic
我需要一个非常简单的循环,从多系统对象中获取每棵系统发育树并计算每棵树的 Ic 并将其放入数据框中。抱歉,如果这么简单,我是 R 的新手,我想不通!
library(apTreeshape)
library(phytools)
multi_trees<- pbtree(b=0.5, d=0, n=200, t=NULL, scale=NULL,
nsim=50, type="continuous", extant.only=TRUE) ### simulate 50 trees stored as multiphylo object
converted_tree <- as.treeshape(multi_trees[[nsim=1]]) ## each tree need to be converted to class treeshapes using following function
Ic <- colless(converted_tree, norm = NULL) #And finally calculate Ic for each tree
循环很简单,所以我假设它是不言自明的。
library(apTreeshape)
library(phytools)
# simulate 50 trees stored as multiphylo object
multi_trees<- pbtree(b=0.5, d=0, n=200, t=NULL, scale=NULL, nsim=50, type="continuous", extant.only=TRUE)
# make data.frame for results
Ic <- matrix(nrow=50, ncol=2)
Ic <- data.frame(Ic)
colnames(Ic) <- c("sim", "Ic")
# loop
for (i in 1:50) {
converted_tree <- as.treeshape(multi_trees[[i]])
Ic[i,1] <- i # get simulation number
Ic[i,2] <- colless(converted_tree, norm = NULL) # get Ic
}
Ic