Исследовать корреляции между большим количеством двоичных переменных и метрической переменной - PullRequest
0 голосов
/ 07 сентября 2018

Я пытаюсь исследовать набор данных с примерно 260 двоичными переменными и метрической. Это макеты категориальных переменных, которые я хочу регрессировать на метрической переменной.

Как я могу их визуализировать?

Сначала я попробовал plot (), но было невозможно использовать его для всего набора данных, и даже если я использую только представление, я не могу их интерпретировать.

enter image description here

Я пытался pairs(), но пришел вывод:

'Ошибка в plot.new (): слишком большие поля рисунка'

Я также пробовал sjp.corr() из пакета sjPlot, но он слишком мал и не поддается интерпретации.

Я не очень разбираюсь в таких данных, что бы вы мне посоветовали? как вы анализируете и интерпретируете данные (даже не графические)? Не могли бы вы порекомендовать не пытаться интерпретировать это графически? У меня также возникла проблема, если я попытаюсь исследовать это не графически и использовать команду rcorr () из пакета Hmisc. Тогда я получил только таблицу 3 x 260, и она пропускает 258 строк? Что я могу сделать?

Мне очень жаль, но я не могу показать вам данные :( Но я был бы рад, если бы вы все еще могли дать мне совет

1 Ответ

0 голосов
/ 07 сентября 2018

Вы не предоставили нам данные, но из вашего графика я могу получить несколько баллов

  1. У вас есть 2 функции, , одна из которых является двоичной (1,0), а другая - целое число от 0 до 600.
  2. Частота как 0, так и 1 больше, когда другая функция находится в диапазоне от 0 до 150.

Итак, учитывая приведенную выше информацию, я генерирую случайный набор данных для себя и отвечаю на ваш вопрос на основе моих данных.

dt<-data.frame(binary=sample(c("0","1"),100,replace = T ),
               price=rnbinom(100, 100,0.5 )  )

В моем наборе данных binary является строкой, которая может содержать только 1 или 0. и цена является числовым значением.

Первое, что я могу сделать, это изучить функцию price, чтобы понять ее гистограмму, она помогает мне получить ее распространение.

library(ggplot2)
ggplot(dt,aes( x=price, fill=binary ))+
  geom_histogram( position="identity", alpha=.5)+
  geom_density()

и результат:

enter image description here

На следующем шаге я хочу сравнить частоту 1 с с 0 с

library(ggplot2)
ggplot(dt,aes(binary,fill=binary))+
  geom_bar()

и это показывает мне их частоту:

enter image description here


Я сомневаюсь, что регрессия - хороший выбор для получения прогноза. Я бы сказал, что лучшим выбором здесь является классификация с использованием rpart

library(rpart)
model<-rpart(binary~price,dt, method="class"  )

Но не забудьте разделить данные test и train.

...