我在R中使用“sva”包来确定我的数据集中的代理变量。我有一个60000行和8列的数据框(成绩单x样本)。该矩阵中的每个元素是对应转录和样品的“TPM”(每个因子的转录物,数值)的值。这是我正在运行的代码:
library(sva)
library(Biobase)
library(limma)
data=read.table("mymatrix.txt")
model = model.matrix(~Sample_1+Sample_2,data=data)
# NULL model
model0 = model.matrix(~1,data=data) # no intercept
# Run SVA
svobj = sva(dat=data, mod=model, mod0=model0)
运行“sav()”函数后,它给出了这个错误: H%*%t(dat)出错:不一致的参数
有没有人知道这是什么意思? 它是.txt文件的一个示例:
Sample_1 Sample_2 Sample_3 Sample_4
ENSMUST00000060336.4 2.10642e-01 1.29483e-01 2.58036e-01 1.59276e-01
ENSMUST00000060345.5 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00
ENSMUST00000060348.2 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00
ENSMUST00000060356.5 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00
ENSMUST00000060357.8 0.00000e+00 0.00000e+00 0.00000e+00 0.00000e+00
<。>在.txt文件中,所有值都是“双”格式,但是当我使用“read.table”读取文件时,它们会转换为“e”格式,这就是问题吗?
在文本文件中:
Sample_1" "Sample_2" "Sample_3" "Sample_4"
"ENSMUST00000000001.4" 18.7276 16.9755 12.138 20.0952
"ENSMUST00000000003.8" 0 0 0 0
"ENSMUST00000000010.8" 0 0 0 0
"ENSMUST00000000028.8" 0 0.427772 0.162408 0
"ENSMUST00000000033.6" 125.936 17.5017 21.3972 59.4235