r - 如何在 R 中运行 ComBat 函数时解决“dim(X) must have a positive length”
问题描述
我ComBat()
在我的表达数据中用于批量效果校正。基本上,该函数输入是表达式数据、批次协变量和模型矩阵,用于感兴趣的结果和批次以外的其他协变量。所以,我根据ComBat()
'sva'包中的功能指令准备了所有输入。“Pheno”是我的临床数据,包括我的样本的 batchId,“TCGA_expr_log”是我的表达数据。我的代码如下:
酚结构:
Sample batchId age . . .
GSM71019.CEL 396 63
GSM71020.CEL 396 58
GSM71021.CEL 410 85
GSM71020.CEL 411 58
GSM71021.CEL 410 40
.
.
.
dim(Pheno)
[1] 74 37
TCGA_expr_log structure:
GSM71019.CEL 1 GSM71019.CEL 2 GSM71019.CEL 3 . . .
Gene symbol
mapt 10.115170 8.628044 8.779235
tp53 5.345168 5.063598 5.113116
sep1 6.348024 6.663625 6.465892
.
.
.
dim(TCGA_expr_log)
[1] 42817 74
batch = Pheno$batchId
TCGA_expr_Co <- ComBat(as.matrix(TCGA_expr_log),batch = batch,mod = modcombat, par.prior = TRUE,mean.only = TRUE)
但是当我运行该功能时,出现以下错误:
Error in apply(dat[, batch == batch_level], 1, function(x) { :
dim(X) must have a positive length
现在,我需要任何人对我的问题发表评论。谢谢
解决方案
推荐阅读
- php - 将自定义字段传递到 wordpress 循环数组
- android - 如何从圆形进度条中删除填充?
- ios - 在 Firestore 中保存 CLLocationCooridnate2D 数组
- angular - 有哪些方法可以在另一个应用程序的 Angular 项目中使用我们的 Angular 组件?
- python - Flask Api 路由与 resquests.post(json=dict) 一起使用
- javascript - How to correctly get data from an API in this for loop?
- cytoscape.js - Cytoscape.js 动态添加节点而不移动其他节点
- python - 弹出窗口中的登录脚本。没有这样的元素
- android - 将 Cordova webview 重定向到外部站点
- sql - 获取具有最小值 SQL Server 的所有项目