在数据框列表中,计算满足条件的比例

时间:2020-01-30 19:30:32

标签: r loops indexing bioinformatics

我有一个数据帧(gtf)的列表,我想计算在一组坐标[i,j](坐标[i,j] == 0)。也就是说,如果我有500个数据帧,其中120个在坐标[1,1]处有0,那么该函数将返回120/500。

最终,我希望我的函数返回一个数据框,其中的列与gtf的列相对应,并且值是在相应坐标中具有0的数据框的比例。这是gtf的精彩片段:

x = matrix(c(1,0), 6,6)
x = as.data.frame(x)
y = matrix(c(0,1), 6,6)
y = as.data.frame(x)
gtf = list(x,y,x,y)

这是我尝试过的:

for (i in seq_along(gtf)) 
    for (j in seq_along(gtf[[i]])) 
        if (gtf[[i]][1,j] == 0) tf[[i]] <- TRUE

1 个答案:

答案 0 :(得分:1)

我们使用list==元素转换为逻辑矩阵,Reduce通过添加相应的'i,j'元素并将其除以{{1} length

中的}
list