首先,我应该提到,我只是在昨天才开始研究R来使用PLS库。我使用'R.matlab'库从MATLAB导入数据。 我的一个矩阵很容易插入数据框,因为它是一维矢量。它表现为如何在R中添加一个2D矩阵作为数据框变量?
my_1d_matrix ... NUM [1:205,1 124 138 38 76 155 ...
所以,我这样做:
> df <- data.frame(x = my_1d_matrix)
我的其他但是矩阵是205x4096。它表明这样在我的工作区:
my_2d_matrix ...大名单(205元,6.5 MB)
我怎样才能插入此作为我在同一个数据帧第二个变量?实际上,我试图从pls库中复制汽油数据集,它的'辛烷'作为一个变量,'NIR'(60x401矩阵)作为第二个。然后很容易执行pls回归。
我希望我的205x4096矩阵是在相同的格式一个由下式给出:
> str(gasoline$NIR)
是:
>AsIs [1:60, 1:401] -0.050193 -0.044227 -0.046867 -0.046705 -0.050859 ...
- attr(*, "dimnames")=List of 2
..$ : chr [1:60] "1" "2" "3" "4" ...
..$ : chr [1:401] "900 nm" "902 nm" "904 nm" "906 nm" ...
所以,最终的结果应该是类似“汽油数据帧',其中第一个变量是my_1d_matrix和第二个一个是my_2d_matrix。
尝试'as.data.frame(my_2d_matrix)' – Tgsmith61591
对我来说,“变量”总是一个向量。如果你想保留'my_2d_matrix'的205x4096结构,那么编写'df2 < - data.frame(my_2d_matrix)'就足够了。 – Qaswed
请阅读我编辑的最后一句话。我试过'new1 < - data.frame(x = my_1d_matrix,y = df2)'和'new2 < - data.frame(x = my_1d_matrix,y = as.data.frame(my_2d_matrix))'但是出现错误参数意味着不同的行数:205,4096 – yannovios