Zvážte nasledujúci kód hračky (čisto ilustratívny):
y <- data.frame(matrix(c(11,12,13,14,113,124,215,219),nrow=4));
y[,2] <- factor(y[,2]);
aov.result <- aov(y$X1 ~ y$X2, data=y);
thsd.result <- TukeyHSD(aov.result); # Produces NaNs but nevermind
fix(thsd.result)
posledný príkaz (fix) ukazuje, že objekt thsd.result je štruktúra obsahujúca zoznam a vnorenú štruktúru:
structure(list(`df$X2` = structure(c(1, 2, 3, 1, 2, 1, NaN, NaN,
NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN,
NaN, NaN, NaN), .Dim = c(6L, 4L), .Dimnames = list(c("124-113",
"215-113", "219-113", "215-124", "219-124", "219-215"), c("diff",
"lwr", "upr", "p adj")))), .Names = "df$X2", class = c("multicomp",
"TukeyHSD"), orig.call = quote(aov(formula = df$X1 ~ df$X2, data = df)), conf.level =
0.95, ordered = FALSE);
Moja otázka znie: Ako by som mohol ísť o prístup k tejto štruktúre? Tj. Ako by som napríklad dostal .Dimnames pozostávajúci z párov?
odpovede:
0 pre odpoveď č. 1máte na mysli takto:
dimnames(thsd.result[[1]])
a to:
> rownames(thsd.result[[1]])
[1] "124-113" "215-113" "219-113" "215-124" "219-124" "219-215"
> colnames(thsd.result[[1]])
[1] "diff" "lwr" "upr" "p adj"
získať výsledok len prístup pomocou [[]]
.
Pozrite si výsledky vytlačené s:
thsd.result[[1]]
a thsd.result[[1]][,1]