我尝试在R中输入数据,但是我不知道如何在以下脚本中将str转换为int。
>countsTable <- read.table("targets.txt")
>matrixTable <- as.matrix(countsTable)
[1,] "hsa-miR-548ax" "0" "1"
[2,] "hsa-miR-548f" "0" "1"
[3,] "hsa-miR-548g-3p" "0" "1"
[4,] "hsa-miR-5589-3p" "0" "1"
[5,] "hsa-miR-5698" "0" "1"
[6,] "hsa-miR-592" "0" "1"
[7,] "hsa-miR-6129" "0" "1"
[8,] "hsa-miR-658" "0" "1"
> normLimma <- normalizeBetweenArrays(matrixTable,method="quantile")
Error in rowMeans(S) : 'x' must be numeric
read.table
返回一个数据框(根据文档),它与矩阵不同。
如您所知,您的数据有三列,只有后两列是数字。当您将数据帧从R转换read.table
为矩阵时,as.matrix
会将所有内容强制转换为单一类型。
这是因为矩阵与数据帧不同,只能保存单一类型的数据。
您可能打算做的是:
matrixTable <- as.matrix(countsTable[,-1])
删除字符列。
如果要保留矩阵中数据的第一列,则可能需要将它们存储为行名:
rownames(matrixTable) <- countsTable[,1]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句