[英]Spearman's rho between ordered factors in R
我有兩個有序的因子,只是想在它們之間找到Spearman的rho。
然而:
> cor(dat$UEMS.2,dat$SCIM23_SubScore1.2,use="pairwise.complete.obs",method="spearman")
Error in cor(dat$UEMS.2, dat$SCIM23_SubScore1.2, use = "pairwise.complete.obs", :
'x' must be numeric
就像進行健全性檢查一樣:
> class(dat$UEMS.2)
[1] "ordered" "factor"
> class(dat$SCIM23_SubScore1.2)
[1] "ordered" "factor"
如何使用R查找有序因子的spearman的rho?
我確實找到了以下內容: 計算相關性-cor()-僅針對列的子集
這引起了同樣的問題:R的cor()函數僅接受數字數據。 這對我來說似乎不對,因為spearman的rho應該能夠處理序數變量。 有序因子是序數變量。
提前感謝。
您可以使用pspearman
包來處理序數變量:
a <- factor(c(1, 2, 3, 4, 4, 4, 3, 4, 2, 2, 1), ordered=TRUE)
b <- factor(c(1, 4, 2, 2, 4, 1, 1, 4, 4, 3, 3), ordered=TRUE)
library(pspearman)
spearman.test(a, b)
# Rsquare F df1 df2 pvalue n
# 0.001015235 0.009146396 1.000000000 9.000000000 0.925904654 11.000000000
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.