
152
|
第
5
章
print(corr_mat)
#> [,1] [,2] [,3]
#> [1,] 1.000 0.556 0.390
#> [2,] 0.556 1.000 0.444
#> [3,] 0.390 0.444 1.000
在这种形式中,矩阵输出的结果是很难解释的。我们可以为行和列指定名称,阐明其
含义:
colnames(corr_mat) <- c("AAPL", "MSFT", "GOOG")
rownames(corr_mat) <- c("AAPL", "MSFT", "GOOG")
corr_mat
#> AAPL MSFT GOOG
#> AAPL 1.000 0.556 0.390
#> MSFT 0.556 1.000 0.444
#> GOOG 0.390 0.444 1.000
现在,你可以一目了然地看到哪些行和列适用于哪些股票。
命名行和列的另一个好处是,你可以通过这些名称引用矩阵元素:
# What is the correlation between MSFT and GOOG?
corr_mat["MSFT", "GOOG"]
#> [1] 0.444
5.17 从矩阵中选定一行或一列
5.17.1 问题
需要从矩阵中选择一行或一列。
5.17.2 解决方案
解决方案取决于输出结果的形式。 如果结果是一个简单的向量,就可以使用普通索引:
mat[1, ] # First row
mat[, 3] # Third column
如果结果是一个单行矩阵或一个单列矩阵,就要包含 drop=FALSE ...