1
私は次のコードを使って対立遺伝子の頻度を計算する3つの集団を持っています。私は私がエラーを取得しないように、対立遺伝子頻度 私の適用関数にna.rm = Tを入れる場所
M=matrix(NA,nrow(mydata),3,) #3 populations
colnames(M)=c("pop1","pop2","pop3")
を保存し、その後、私はna.rm = Tを置く
#population 1
M[,1]=(apply(mydata[,which(colnames(mydata)=="pop1")],
1,function(x) sum(x)/(length(x)*2))
を使用して、各集団について計算するのに行列を作っています私のデータのNAsに?私は
M[,1]=(apply(mydata,na.rm=T[,which(colnames(mydata)=="pop1")],
1,function(x) sum(x)/(length(x)*2))
を試してみましたが、私はsum()
機能が
だから
sum
function (..., na.rm = FALSE) .Primitive("sum")
を参照してくださいna.rm
引数を取るものですバックのエラー(次元の数が正しくありません)
'sum(x、na.rm = T)'の中で試してください。これは 'na.rm'引数を持つ唯一の関数です。しかし、私はあなたの 'apply(...) 'に他の問題があると思います – SymbolixAU
ありがとう、私はそれを試してエラーを返さなかった、今すぐデータセット全体を実行し、それがどう行くかを見てください 編集 - Symbolix、完璧に働いた:) –
あなたは大歓迎です;私は答えとしてそれを書いた。 – SymbolixAU