You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用名称列表修改R语言对角矩阵的行标签与列标签

实现方法

你可以通过构建名称映射查找表的方式完成替换,代码如下:

# 1. 从namelist生成键值映射向量,方便快速匹配
lookup <- setNames(namelist[, "newname"], namelist[, "name"])

# 2. 复制原矩阵后替换行列名(不修改原始矩阵的话可以加这一步,不需要可以直接改Mat)
newMat <- Mat
rownames(newMat) <- lookup[rownames(newMat)]
colnames(newMat) <- lookup[colnames(newMat)]

如果偏好使用match函数实现匹配,也可以用下面的版本:

newMat <- Mat
rownames(newMat) <- namelist[match(rownames(newMat), namelist[,"name"]), "newname"]
colnames(newMat) <- namelist[match(colnames(newMat), namelist[,"name"]), "newname"]

两种方法最终得到的newMat都和你给出的预期效果完全一致。

内容的提问来源于stack exchange,提问作者marie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 01:15:05