Code: Alles auswählen
polr(ER03 ~ EM_sum, data=ER, Hess=TRUE)$df.freedom
(Wobei ich eigentlich immer noch gedanklich bei der Spearman-Korrelation stecke. KISS - keep it simple, stupid)
LG,
Bernhard
Code: Alles auswählen
polr(ER03 ~ EM_sum, data=ER, Hess=TRUE)$df.freedom
Code: Alles auswählen
ER$ER03 = ordered(ER$ER03)
Code: Alles auswählen
cor.test(ER$ER03, ER$EM_sum, method = "spearman")
Code: Alles auswählen
> cor.test(ER$ER03, ER$EM_sum, method = "spearman")
Fehler in cor.test.default(ER$ER03, ER$EM_sum, method = "spearman") :
'x' muss ein numerischer Vektor sein
>
etwas fehlt?col="violet", , lty=2,
Also kann ich auch einfach den t-Wert berichten. Da war ich mir ja unsicher. Denke nicht, dass mich der Prof dafür umbringen wird und wahrscheinlich weiss er selber nicht, wie das anders sein solltebigben hat geschrieben: Di Feb 04, 2020 8:15 amCode: Alles auswählen
curve(dnorm(x), from = -5, to = 5, col="blue") curve(dt(x, 50), from = -5, to = 5, col="red", add = TRUE) curve(dt(x, 100), from = -5, to = 5, col="violet", , lty=2, add = TRUE) legend("topright", fill = c("blue", "red", "violet"), legend = c("Normal", "t mit df = 50", "t mit df = 100"))
Code: Alles auswählen
Spearman's rank correlation rho
data: ER$EM_sum and ER$ER03
S = 464048, p-value < 2.2e-16
alternative hypothesis: true rho is not equal to 0
sample estimates:
rho
0.5742037
Ich halte das auch für blöd gemacht und bin selbst mehr als einmal darüber gestolpert. Hat ja keiner gesagt, dass sich an R nichts verbessern ließe. Wenn es einen wirklich stören sollte, dann kannst Du Dir eine eigene Funktion dafür schreiben. Sowas in der ArtRRechnende hat geschrieben: Mi Feb 05, 2020 9:02 pmWieso kann R eine ordinalskalierte Variabel in einer Spearman Korrelation nicht als solche annehmen? Irgendwie verwirrt mich bei solchen Dingen R gerne immer mal wieder...)
Code: Alles auswählen
spearman.test <- function(x, y) cor.test(as.numeric(x), as.numeric(y), method="spearman")
Ich protestiere! Ich habe sowohl Publikationen als auch Statistik-Kurse die ohne ohne p-Werte gemacht
Ich würde pearson nehmen und ein rank() dazupacken:kannst Du Dir eine eigene Funktion dafür schreiben. Sowas in der Art
Code: Alles auswählen
set.seed(1)
x <- 1:5
y <- 1:5 + rnorm(5)
xf <- factor(x, ordered = TRUE)
cor(x, y, method = 'pearson')
cor(x, y, method = 'spearman')
cor(rank(x), rank(y), method = 'pearson')
# with xf
cor(xf, y, method = 'spearman') # fails
cor(as.numeric(xf), y, method = 'spearman')
cor(rank(xf), rank(y), method = 'pearson')