myfunction3 <- function(seq2,z)
for(j in 1:100)
{
if(z[j]>0.7)
{
if(seq2[j] =='A') replace(seq2,j,sample(c("C","G","T"),1))
else if(seq2[j] =='G') replace(seq2,j,sample(c("C","A","T"),1))
else if(seq2[j] =='T') replace(seq2,j,sample(c("C","G","A"),1))
else if(seq2[j] =='C') replace(seq2,j,sample(c("A","G","T"),1))
else if(seq2[j]=='E') replace(seq2,j,'T')
}
}
return(seq2)
根據概率向量z,其中,如果該概率大於0.7,則新的序列可具有任何其它三種核苷酸的模擬給定的DNA序列SEQ2 (A,G,T,C)。但每次它都返回一個NULL向量。模擬中的R用我寫了這個功能概率
你需要周圍定義您的功能...'功能(SEQ2表達一些大括號, z){... ... return(seq2)}' –
如果seq2是單個字符串,則seq2 [j]是NA。 –
另外,我不確定'替換'是做這件事的正確方法。對每個語句使用'seq2 [j] < - sample(c(...),1)''。 –