gpt4 book ai didi

r - 将 na.rm=T 放在我的应用函数中的位置

转载 作者:行者123 更新时间:2023-12-05 06:42:28 24 4
gpt4 key购买 nike

我使用以下代码计算三个群体的等位基因频率。我做了一个矩阵来存储等位基因频率

M=matrix(NA,nrow(mydata),3,) #3 populations
colnames(M)=c("pop1","pop2","pop3")

然后计算每个人口使用

#population 1
M[,1]=(apply(mydata[,which(colnames(mydata)=="pop1")],
1,function(x) sum(x)/(length(x)*2))

我应该把 na.rm=T 放在哪里,这样我就不会因为数据中的 NA 而出现错误?我试过了

M[,1]=(apply(mydata,na.rm=T[,which(colnames(mydata)=="pop1")],
1,function(x) sum(x)/(length(x)*2))

但我收到错误消息(维数不正确)

最佳答案

sum() 函数接受一个na.rm 参数

sum
function (..., na.rm = FALSE) .Primitive("sum")

因此,您需要在 sum(x, na.rm=T) 函数中使用 na.rm = TRUE

关于r - 将 na.rm=T 放在我的应用函数中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36997644/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com