Биплот корреляции и расстояния с использованием автоплота?

С примером, предоставленным R (USArrests), я хотел бы спросить, может ли кто-нибудь сказать мне, что вызывает масштабирование в автоплоте? Я знаком с биплотом расстояния и корреляции, как описано в Borcard et al. (2011). Функция autoplot делает биплот более привлекательным, но я не могу найти, как вы просто определяете расстояние между биплотом типа расстояния и корреляции, используя функцию.

# Distance biplot (scaling = 1)
biplot(prcomp(USArrests, scale = TRUE), scale=0)

# correlation biplot (scaling =2)
biplot(prcomp(USArrests, scale = TRUE), pc.biplot=TRUE)

# using autoplot there are several options: 
library(ggfortify)
ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), pc.biplot=TRUE, label = TRUE, loadings.label = TRUE)

# I assume this is equal to the correlation biplot
ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), scale=0, label = TRUE, loadings.label = TRUE)

ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), scale=1, label = TRUE, loadings.label = TRUE)

ggplot2::autoplot(stats::prcomp(USArrests, scale=TRUE), scale=2, label = TRUE, loadings.label = TRUE)

Могу ли я просто построить расстояние (масштабирование = 1), используя автоплот?

1 ответ

Да,

ggplot2::autoplot(stats::prcomp(USArrests, scale = TRUE), scale = 0, label = TRUE, loadings.label = TRUE)

а также

biplot(prcomp(USArrests, scale = TRUE), scale = s)

дать аналогичные результаты для 0 <= s <= 1. См. stats:::biplot.prcomp а также ggfortify:::autoplot.prcomp убедить себя. В частности, обе функции имеют (следующее из stats:::biplot.prcomp)

lam <- x$sdev[choices]
n <- NROW(scores)
lam <- lam * sqrt(n)
lam <- lam^scale
biplot.default(t(t(scores[, choices])/lam), t(t(x$rotation[, 
        choices]) * lam), ...)

которая объясняет роль scale, Также см ?ggbiplot а также ?autoplot.prcomp,

Другие вопросы по тегам