簡単にするために、私は次のようなデータセットを持っています:
b <- 1:6
# > b
# [1] 1 2 3 4 5 6
jnk <- c(2, 4, 5, NA, 7, 9)
# > jnk
# [1] 2 4 5 NA 7 9
私が試したとき:
cor(b, jnk, na.rm=TRUE)
私は得ます:
> cor(b, jnk, na.rm=T)
Error in cor(b, jnk, na.rm = T) : unused argument (na.rm = T)
私も試しましたna.action = na.exclude
など。どれも動作しないようです。問題が何であるか、そして私がそれをどのように修正できるかを知ることは本当に役に立ちます。ありがとう。
TL; DR:代わりに使用:
cor(b, jnk, use="complete.obs")
?cor
を読みます:
cor(x, y = NULL, use = "everything",
method = c("pearson", "kendall", "spearman"))
na.rm
はなく、use
があります。
欠損値が存在する場合の共分散を計算する方法を提供するオプションの文字列。これは、文字列
"everything"
、"all.obs"
、"complete.obs"
、"na.or.complete"
、または"pairwise.complete.obs"
の(の省略形)である必要があります。
一つを選ぶ。それぞれが行うことの詳細は、?cor
のDetails
セクションにあります。
この質問に対する答えが明確であることを確認するためだけに。
NAを無視するには、
b <- 1:6
jnk <- c(2, 4, 5, NA, 7, 9)
cor(b, jnk, use="complete.obs")
[1] 0.9905977