【发布时间】:2016-09-10 12:45:38
【问题描述】:
我使用 R 中的 Kohonen 包将 SOM 应用于我拥有的基因组数据集。 SOM 有 55 个变量。我想将这些变量的代码子集绘制为扇形图。例如,仅使用 R 中固有的 wine 数据集:
library(kohonen)
data(wines)
set.seed(7)
training <- sample(nrow(wines), 120)
Xtraining <- scale(wines[training, ])
Xtest <- scale(wines[-training, ],
center = attr(Xtraining, "scaled:center"),
scale = attr(Xtraining, "scaled:scale"))
som.wines <- som(Xtraining, grid = somgrid(5, 5, "hexagonal"))
plot(som.wines, type="codes")
这会将每个节点上每个预测变量的权重绘制为扇形图。在这种情况下,我想做的是情节说,只有镁、灰、苹果酸和类黄酮在粉丝情节中。
plot(som.wines, type = "property", property = som.wines$codes[,'magnesium'])
将绘制每个节点上镁的权重。
做类似的事情
plot(som.wines, type = "property", property =som.wines$codes[,c('magnesium','ash')])
只需用每个节点的灰分权重覆盖镁权重。
还有类似的:
plot(som.wines, type = "codes", property = som.wines$codes[,c('magnesium','ash')],)
也不行。
任何帮助将不胜感激。
【问题讨论】:
-
您应该提供某种形式的reproducible example 以及我们可以运行的示例输入数据,以便我们可以看到您所看到的内容。描述您希望如何选择预测变量的子集。现在我真的不确定你在寻找什么样的答案。
-
嗨 MrFlick,感谢您的建议 - 我已经更新了我的问题,这应该更具解释性。