我试图将矩阵 Y 的前两列相互绘制,并根据它们在我的数据集的第 12 列中属于哪个组来分配不同的数据点不同的形状和颜色。下面是我的代码:
X <- as.matrix(course[,1:11])
S <- cov(X)
l <- eigen(S)$values
e <- eigen(S)$vector
Y <- X %*% e
plot(Y[,1:2],
xlab = "PC1",
ylab = "PC2",
pch = c(1, 17, 8)[as.numeric(course[,12])], # different 'pch' types
main = "Plot of first 2 Principle Components",
col = c(1, 8, 1)[as.numeric(course[,12])]
)
“课程”是我正在使用的数据集,Y 是我有兴趣用于我的绘图的矩阵。然而,我基于我的标签的组之一基本上是缺失值或“NA”。我不能使用 as.numeric() 因为这不会将“NA”值视为数字。
当我从图中运行代码时,我得到了两组值,它完全忽略了 NA 的值。
我非常感谢您的帮助。