【发布时间】:2018-06-11 20:27:47
【问题描述】:
我有一个矩阵mat_1,其中包含镜面反射的行和列,但缺少其中之一。所以假设我想要按字母顺序排列的行和列:a、b、c、d、e,但我的矩阵缺少一个字母,即 b。
如何生成代码 sn-p 以在 mat_1 的字母顺序中找到间隙,添加缺失的行和列,并在第二个矩阵 mat_2 中使用 NaN 填充观察结果?
这是我的可重现示例:
set.seed(100)
#create matrix with missing column and row
mat_1 = matrix(rnorm(16), nrow=4, ncol=4, byrow = TRUE)
#rename columns and rows
dimnames(mat_1) = list(c("a", "c", "d", "e"), c("a", "c", "d", "e"))
#expected output
> mat_2
a b c d e
a -0.5021924 NaN 0.1315312 -0.07891709 0.88678481
b NaN NaN NaN NaN NaN
c 0.1169713 NaN 0.3186301 -0.58179068 0.71453271
d -0.8252594 NaN -0.3598621 0.08988614 0.09627446
e -0.2016340 NaN 0.7398405 0.12337950 -0.02931671
【问题讨论】: