Corrplot. ошибка корреляции: «х» должно быть цифрой c. все поля числовые - PullRequest
1 голос
/ 27 февраля 2020

Цель:

У меня есть набор данных, который содержит много данных обработки ссуд (набор данных: coor_data). Wi sh, чтобы найти, если их мера корреляции значений р, используя cor() для corrplot() Тем не менее, мое сообщение об ошибке:

Ошибка в cor (coor_data): 'x' должно быть цифрой c.

Вот что было сделано:

факторизованные общие атрибуты в наборе данных. sapply() для преобразования символа в цифры c данные для атрибута состояния в наборе данных. Выбранные столбцы.

df_factored_loans <- df_loans %>% mutate(status = as.character(status), state = factor(state), term = factor(term), grade = factor(grade), employment = factor(employment), length = factor(length), home = factor(home), verified = factor(verified), reason = factor(reason))
df_factored_loans$status <- sapply(as.character(df_factored_loans$status), switch, "Charged Off" = 100, "Fully Paid" = 200, "Current" = 300, "Charged Off" = 400, "In Grace Period" = 500, USE.NAMES = F)
coor_data <- select(df_factored_loans, status, amount, rate, payment, income, debtIncRat, delinq2yr, inq6mth, openAcc, pubRec, revolRatio, totalAcc, totalRevLim, accOpen24, avgBal, bcOpen, bcRatio, totalLim, totalRevBal, totalBcLim, totalIlLim)

Вот пример набора данных: coor_data

dim(coor_data) 
[1] 50000    21
length(dimnames(coor_data))
[1] 2
dput(coor_data[1,])
structure(list(status = list(100), amount = 8000, rate = 0.14, 
               payment = 272.07, income = 49966, debtIncRat = 30.05, delinq2yr = 0, 
               inq6mth = 0, openAcc = 11, pubRec = 0, revolRatio = 0.55, 
               totalAcc = 15, totalRevLim = 8100, accOpen24 = 8, avgBal = 4369, 
               bcOpen = 43, bcRatio = 95.7, totalLim = 60629, totalRevBal = 48054, 
               totalBcLim = 1000, totalIlLim = 52529), row.names = 1L, class = "data.frame")
typeof(coor_data[1,])
[1] "list"

Выполните корреляцию:

corrplot(cor(coor_data), method="number", na.rm = TRUE, type = "full")

Ошибка в кор (coor_data ): «х» должно быть цифрой c

...