R中data.farme中所有变量的相关性

问题描述 投票:0回答:1

我知道将一个data.frame输入到 cor 将会自动给出一个相关矩阵(例:)。cor(mtcars)).

但我不知道为什么当我输入自己的data.frame(dat_w)至 cor 我得到了下面的错误?

我有 NAInf 却用 use = 'pairwise.complete.obs'.

dat_w <- read.csv('https://raw.githubusercontent.com/izeh/n/master/w1.csv', stringsAsFactors = F)


cor(dat_w, use = 'pairwise.complete.obs')

# >Error : 'x' must be numeric
r dataframe lapply correlation
1个回答
1
投票

我们可以找到的列,是数字自动

i1 <-  sapply(dat_w, is.numeric)
out <- cor(dat_w[i1], use = 'pairwise.complete.obs')

如果我们想把 NaN 用某个值,即0

out1 <-  replace(out, is.nan(out)|is.na(out), 0)

1
投票

因为您的第2列(gender)不是数字型。试试。

cor(dat_w[-2], use = 'pairwise.complete.obs')
© www.soinside.com 2019 - 2024. All rights reserved.