【问题标题】:Why can't I convert a vector into a matrix with 'as.matrix' function?为什么我不能使用“as.matrix”函数将向量转换为矩阵?
【发布时间】:2015-02-09 16:20:31
【问题描述】:
> tem = 1:9801
> dim(as.matrix(tem,nrow=99,ncol=99))
[1] 9801    1
> dim(matrix(tem,nrow=99,ncol=99))
[1] 99 99

我相信“as.matrix”函数可以将向量转换为具有预先指定的行数和列数的矩阵。 但正如您在上面的 R 结果中看到的那样,'as.matrix' 函数没有,但 'matrix' 函数有。 为什么 'as.matrix' 函数不能正常工作?

【问题讨论】:

    标签: r


    【解决方案1】:

    as.matrix 就是这样工作的。它尽最大努力将输入数据转换为矩阵,使事物尽可能接近。在这种情况下,将向量转换为单列矩阵是最有意义的。如果您查看实现(在 as.matrix.default 中找到),您会发现它忽略了除第一个输入之外的所有输入(在本例中为输入向量),并且始终只生成一个单列矩阵。

    如果要指定行数和列数,使用matrix 有什么问题?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-12
      • 2017-06-10
      • 1970-01-01
      • 2021-04-29
      • 2010-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多