r - 当矩阵的维数未知时,如何设置唯一的行名和列名?

标签 r matrix rename

我有矩阵像:

     [,1][,2][,3][,4]
[1,]  12  32  43  55
[2,]  54  54  7   8
[3,]  2   56  76  88
[4,]  58  99  93  34


我事先不知道矩阵中将有多少行和多少列。因此,我需要动态创建行和列的名称。

我可以像这样直接命名列(行):

colnames(rmatrix) <- c("a", "b", "c", "d")


但是,如何动态创建名称向量以适合矩阵的尺寸?

nm <- ("a", "b", "c", "d")
colnames(rmatrix) <- nm 

最佳答案

您可以使用rownamescolnames并设置do.NULL=FALSE以便动态创建名称,如下所示:

set.seed(1)
rmatrix  <-  matrix(sample(0:100, 16), ncol=4)

dimnames(rmatrix) <- list(rownames(rmatrix, do.NULL = FALSE, prefix = "row"),
                          colnames(rmatrix, do.NULL = FALSE, prefix = "col"))

rmatrix
     col1 col2 col3 col4
row1   26   19   58   61
row2   37   86    5   33
row3   56   97   18   66
row4   89   62   15   42


您可以更改prefix以根据需要命名行/列。

关于r - 当矩阵的维数未知时,如何设置唯一的行名和列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16032778/

相关文章:

r - 用 R 绘制表格

python - 将 numpy 3 维矩阵切片为 2 维矩阵

mysql - 在 MySQL 中截断一组表的更快方法是什么?

linux - 用于将文件夹名称复制并添加到多个子目录中的文件的 Shell 脚本

c# - 重命名 WCF 服务时出错

r - 根据 R 中另一个 df 中的一行中的多个值有条件地填充一个 df 中的列的更好方法

r - 在 boxplot r 中添加回归线

r - 检查 Posixct 时间是否在区间内

多维动态数组中的 C++ 对象构造

c - MPI - 发送和接收列