我想創建一個不同長度的字符串矩陣。使用矩陣的整數值來確定字符串矩陣中的字符串的長度
到目前爲止,我還沒有能夠正確訪問矩陣中的元素,以便將它們應用到新的元素中。
ranNumsVec <- runif(1000, min = 100, max = 1000)
ranNumsVec <- round(ranNumsVec, digits = 0)
clusterSeqLengths <- matrix(data = ranNumsVec, nrow = 10, ncol = 100,
byrow = FALSE, dimnames = NULL)
clusterSeqs <- matrix(data = NA, nrow = 10, ncol = 100, byrow = FALSE, dimnames = NULL)
^這些很好
有了這些功能,我想一定的概率文字應用到一個單獨的矩陣。 (字符串矩陣),使得矩陣內的每個字符串由存儲在上述隨機Nums Vec
中的隨機數之一確定。最後,我正在尋找如上所述的1000個長度爲100到1000的ATGC序列的矩陣。
lengthSmallString <- function(clusterSeqLengths)
clusterSeqs <- paste(sample("A", "C", "G", "T"), c clusterSeqLengths,replace=TRUE ,prob=c(0.2, 0.55, 0.1, . .15))
fillCharsToLength <- function(clusterSeqs)
clusterSeqs <- apply(clusterSeqs, 2, lengthSmallString, simplify = TRUE, USE.NAMES
= FALSE)
我不完全確定如何正確地遍歷矩陣並將粘貼函數應用於一定長度的字符串。我試圖for循環,但它並沒有讓我很遠
for(i=1:nume1(array) in clusterVectorNums)
{
for(j in clusterVectorNums)
{
seqLength <- ranNumsVec[i,j]
clusterSeqs[i,j] <- paste(sample(c("A", "C", "G", "T"),
seqLength, replace=TRUE ,prob=c(0.2, 0.55, 0.1, 0.15)),
collapse="")
}
}
在第二代碼片段的功能定義看起來比較奇怪的我,所以我沒有嘗試進行編輯。請仔細檢查並糾正。 – Uwe