1

我想计算至少 X 个相同类型(列 ID)样本中高于阈值的行条目数?这是我想做的一个例子:

计算至少 2 个相同类型的栽培品种中计数高于 5 的基因 (g1 - g4) 的数量。

Cultivar A A B B B
g1       5 2 6 7 10
g2       6 9 3 2 1
g3       2 1 3 4 5
g4       4 6 7 3 2 

计数必须导致计数 g1、g2,而不是 g3 和 g4。结果 = 2。我知道如何计算两个随机样本中的基因数量以及对过程进行随机化和二次抽样:

#Filter for genes with values larger than 5 reads in at least 2 random samples
# Replace values >5 to 1
Gene_counts1=ifelse(RAW_gene_counts>5,1,0)
# Number of randomizations 100
MATRIX = matrix(NA,100,length(SAMPLE))
x=1
SAMPLE = c(10,20,30,40,50,60)
for(i in SAMPLE){
for (j in 1:100){
    columns = sample(1:ncol(Gene_counts1), i, replace = TRUE)
    random_sample = mapply(function(row,col)return(Gene_counts1[row,col]), col=columns)
    MATRIX[j,x] = sum(rowSums(random_sample)>=2)
    }
    x=x+1
}
MATRIX
colnames(MATRIX)=SAMPLE

谁能帮我吗?

4

0 回答 0