我有一个R降价代码块,看起来像这样(这是非常大的代码的一小部分)。
filterLowExpressedGenes <- function(sce, cutoffCell, cutoffTranscript){
apply(
counts(sce[ , colData(sce)$use]),
1,
function(x) length(x[x > cutoffTranscript]) >= cutoffCell)
}
```
```{r include=T}
for (i in seq_along(sce_list))
{
print(rowData(sce_list[[i]])$use <- filterLowExpressedGenes(sce_list[[i]], 3, 5))
}
```
{r include=T}
for (i in seq_along(sce_list))
{
print(table(rowData(sce_list[[i]])$use))
}
到这里一切正常,输出为:
## [1] "sce_1"
##
## FALSE TRUE
## 31852 1842
## [1] "sce_2"
##
## FALSE TRUE
## 31009 2685
## [1] "sce_3"
##
## FALSE TRUE
## 31560 2134
## [1] "sce_4"
##
## FALSE TRUE
## 31697 1997
对前一个块中处理的信息进行操作的下一个块会引发错误:
code:
```{r include=T}
for (i in seq_along(sce_list))
{
sce_list[[i]]$qc = sce_list[[i]][rowData(sce_list[[i]]$use), colData(sce_list[[i]]$use)]
}
```
我得到的错误是:
Quitting from lines 331-345 (prototype.Rmd)
Error in (function (classes, fdef, mtable) :
unable to find an inherited method for function 'rowData' for signature '"logical"'
Calls: <Anonymous> ... withVisible -> eval -> eval -> [ -> rowData -> <Anonymous>
Execution halted
很抱歉,我无法为您提供示例可行数据。由于这介于编码部分之间,因此这意味着数据已经过某种处理。
我完全意识到,要找出解决方案,需要进行一些猜测工作或进行反复尝试。但是,欢迎您提供任何帮助/建议以使这项工作奏效。
先谢谢您。