在R中,是否有一种方法可以将整个矢量保存为矩阵或数据帧的一个值,而不必先将其组合为单个值?
例如,如果我有一个向量。
pk<-c(0.021477,0.021114,0.022794,0.014858,0.009690,0.003255,0.002715)
Run Code Online (Sandbox Code Playgroud)
和矩阵
tst<-matrix(data=NA,nrow=4,ncol=4)
Run Code Online (Sandbox Code Playgroud)
无论如何,例如。
tst[1,1]<-pk
Run Code Online (Sandbox Code Playgroud)
?
我知道我可以将向量粘贴在一起,但是我想知道是否有避免这种情况的方法?这是效率问题,因为实际矩阵为33427 x 33427,每个向量的长度约为300个值,我需要对矩阵中的每个值进行进一步的分析。我希望找到一种加快分析速度的方法。
您当然可以在矩阵的每个元素中放置一个向量。尝试类似
tst<-matrix(data=list(),nrow=4,ncol=4)
tst[[1,1]] <- pk #note double square brackets needed for assignment
Run Code Online (Sandbox Code Playgroud)
它不会“很好地”打印
tst
[,1] [,2] [,3] [,4]
[1,] Integer,5 NULL NULL NULL
[2,] NULL NULL NULL NULL
[3,] NULL NULL NULL NULL
[4,] NULL NULL NULL NULL
Run Code Online (Sandbox Code Playgroud)
但是可以通过显而易见的方式提取元素
> tst[1,1]
[[1]]
[1] 0.021477 0.021114 0.022794 0.014858 0.009690 0.003255 0.002715
#note list
> tst[[1,1]]
[1] 0.021477 0.021114 0.022794 0.014858 0.009690 0.003255 0.002715
#original vector
Run Code Online (Sandbox Code Playgroud)