Здравствуйте, гость ( Вход | Регистрация )
28.06.2017 - 01:29
Сообщение
#1
|
|
|
Группа: Пользователи Сообщений: 76 Регистрация: 27.04.2014 Пользователь №: 26375 |
Подскажите, пожалуйста, кто чем может)). Я делаю логистическую регрессию. Все предикторы биноминальные (0,1). Y-зависимая переменная(бинарная 0 - нет события(это хорошо), 1-есть событие(это плохо)). Дело в том, что нули к нулям, он мало мальски правильно соотносит, но 50% единиц(плохих) у него попадают к нулям(хорошим).Т.е. неверное определение. Как понять, почему так происходит и что сделать, чтобы улучшить классификацию, хотя бы до 85% точности?
Доп. инфо, я гуглила, и нашла метод Feature Selection и его реализацию в R Boruta. Выделила 6 предикторов, думала счастье рядом, сейчас построила модель, но не тут-то было, классификация такая же некачественная:(( Может что-то не то сделала?(( Что делать? (с)(Чернышевский Н.Г.)
Прикрепленные файлы
|
|
|
![]() |
![]() |
![]() |
4.07.2017 - 13:23
Сообщение
#2
|
|
|
Группа: Пользователи Сообщений: 76 Регистрация: 27.04.2014 Пользователь №: 26375 |
К сожалению вопросы есть
Код str(df) 'data.frame': 823 obs. of 17 variables: $ isOneDay : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ sizeList : Factor w/ 4 levels "0","1","2","3": 1 1 1 2 1 1 1 1 1 1 ... $ licensesList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosWinnerNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosWinnerSumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosPlacerNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosPlacerSumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ inspectionsInFutureNumList : Factor w/ 4 levels "0","1","2","8": 2 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsNumList : Factor w/ 11 levels "0","1","2","3",..: 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsNoViolationsNumList : Factor w/ 11 levels "0","1","2","3",..: 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsFailsList: Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ courtPracticeList : Factor w/ 2 levels "0","1": 2 2 2 1 2 2 2 1 2 1 ... $ digestGreenList : Factor w/ 9 levels "1","2","3","4",..: 4 3 4 1 4 3 2 2 3 3 ... $ linkedEntitiesByCeoNumList : Factor w/ 2 levels "0","1": 2 2 1 2 1 2 2 1 2 2 ... $ linkedEntitiesByFounderNumList : Factor w/ 2 levels "0","1": 1 1 2 1 1 1 1 1 1 1 ... $ linkedEntitiesChildrenNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ digestGreyList : Factor w/ 8 levels "0","1","2","3",..: 2 3 3 5 2 2 3 5 3 4 ... - attr(*, "na.action")=Class 'omit' Named int [1:1345] 12 14 17 26 29 42 43 49 50 57 ... .. ..- attr(*, "names")=8322456 [1:1345] "12" "14" "17" "26" ... вот реальные данные newdata=read.csv("x.csv") удалите из наборе x.csv переменную Y, я хочу ее предсказать newdata=data.frame(lapply(newdata, factor)) там не должно быть Y Код 'data.frame': 11 obs. of 16 variables: $ sizeList : Factor w/ 4 levels "0","1","2","3": 2 1 2 4 2 4 1 1 4 3 ... $ licensesList : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 2 1 1 1 ... $ gosWinnerNumList : Factor w/ 2 levels "0","1": 2 2 2 2 1 1 1 2 1 2 ... $ gosWinnerSumList : Factor w/ 2 levels "0","1": 2 2 2 2 1 1 1 2 1 2 ... $ gosPlacerNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ gosPlacerSumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsInFutureNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsNoViolationsNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsFailsList: Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ courtPracticeList : Factor w/ 2 levels "0","1": 2 2 2 2 1 2 1 2 1 2 ... $ digestGreenList : Factor w/ 5 levels "4","5","6","7",..: 1 1 1 3 2 5 4 3 3 3 ... $ linkedEntitiesByCeoNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ linkedEntitiesByFounderNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 1 1 ... $ linkedEntitiesChildrenNumList : Factor w/ 2 levels "0","1": 2 2 1 2 2 2 2 2 2 2 ... $ digestGreyList : Factor w/ 3 levels "0","1","2": 1 3 2 2 2 2 3 3 2 2 ... все переменные одинаковые у тип у них фактор! Error in predict.randomForest(model, newdata = newdata, type = "class") : Type of predictors in new data do not match that of the training data. Кстати если в наборе х.csv есть переменная Y он дает предсказания. Но смысл, мне нужно на новых данных это сделать, а на них заведомо нет игрика |
|
|
![]() |
![]() |
4.07.2017 - 20:18
Сообщение
#3
|
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
К сожалению вопросы есть Код str(df) 'data.frame': 823 obs. of 17 variables: $ isOneDay : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ sizeList : Factor w/ 4 levels "0","1","2","3": 1 1 1 2 1 1 1 1 1 1 ... $ licensesList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosWinnerNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosWinnerSumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosPlacerNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ gosPlacerSumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ inspectionsInFutureNumList : Factor w/ 4 levels "0","1","2","8": 2 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsNumList : Factor w/ 11 levels "0","1","2","3",..: 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsNoViolationsNumList : Factor w/ 11 levels "0","1","2","3",..: 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsFailsList: Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ courtPracticeList : Factor w/ 2 levels "0","1": 2 2 2 1 2 2 2 1 2 1 ... $ digestGreenList : Factor w/ 9 levels "1","2","3","4",..: 4 3 4 1 4 3 2 2 3 3 ... $ linkedEntitiesByCeoNumList : Factor w/ 2 levels "0","1": 2 2 1 2 1 2 2 1 2 2 ... $ linkedEntitiesByFounderNumList : Factor w/ 2 levels "0","1": 1 1 2 1 1 1 1 1 1 1 ... $ linkedEntitiesChildrenNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ... $ digestGreyList : Factor w/ 8 levels "0","1","2","3",..: 2 3 3 5 2 2 3 5 3 4 ... - attr(*, "na.action")=Class 'omit' Named int [1:1345] 12 14 17 26 29 42 43 49 50 57 ... .. ..- attr(*, "names")=8322456 [1:1345] "12" "14" "17" "26" ... вот реальные данные newdata=read.csv("x.csv") удалите из наборе x.csv переменную Y, я хочу ее предсказать newdata=data.frame(lapply(newdata, factor)) там не должно быть Y Код 'data.frame': 11 obs. of 16 variables: $ sizeList : Factor w/ 4 levels "0","1","2","3": 2 1 2 4 2 4 1 1 4 3 ... $ licensesList : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 2 1 1 1 ... $ gosWinnerNumList : Factor w/ 2 levels "0","1": 2 2 2 2 1 1 1 2 1 2 ... $ gosWinnerSumList : Factor w/ 2 levels "0","1": 2 2 2 2 1 1 1 2 1 2 ... $ gosPlacerNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ gosPlacerSumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsInFutureNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsNoViolationsNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ inspectionsHasViolationsFailsList: Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ courtPracticeList : Factor w/ 2 levels "0","1": 2 2 2 2 1 2 1 2 1 2 ... $ digestGreenList : Factor w/ 5 levels "4","5","6","7",..: 1 1 1 3 2 5 4 3 3 3 ... $ linkedEntitiesByCeoNumList : Factor w/ 1 level "0": 1 1 1 1 1 1 1 1 1 1 ... $ linkedEntitiesByFounderNumList : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 1 1 ... $ linkedEntitiesChildrenNumList : Factor w/ 2 levels "0","1": 2 2 1 2 2 2 2 2 2 2 ... $ digestGreyList : Factor w/ 3 levels "0","1","2": 1 3 2 2 2 2 3 3 2 2 ... все переменные одинаковые у тип у них фактор! Error in predict.randomForest(model, newdata = newdata, type = "class") : Type of predictors in new data do not match that of the training data. Кстати если в наборе х.csv есть переменная Y он дает предсказания. Но смысл, мне нужно на новых данных это сделать, а на них заведомо нет игрика ну так уровни факторов улетели, они могут быть только подмножеством от обучающего датасета Код levels(newdata$digestGreyList) <- levels(df$digestGreyList) или автоматом для совпадающих Код for(n in intersect(names(df), names(newdata))) levels(newdata[,n]) <- levels(df[,n]) ЗЫ а вообще не надо этих групп плодить, все данные вместе должны быть и просто признак принадлежности (тогда и геморроя такого меньше) Сообщение отредактировал p2004r - 4.07.2017 - 20:21 ![]() |
|
|
![]() |
![]() |
nastushka Логистическая регрессия в R 28.06.2017 - 01:29
p2004r Цитата(nastushka @ 28.06.2017 - 01:2... 28.06.2017 - 08:07
leo_biostat Цитата(nastushka @ 28.06.2017 - 01:2... 28.06.2017 - 08:34
Олег Кравец Цитата(leo_biostat @ 28.06.2017 - 08... 28.06.2017 - 18:32
p2004r Цитата(nastushka @ 28.06.2017 - 01:2... 28.06.2017 - 18:40
p2004r Цитата(nastushka @ 28.06.2017 - 01:2... 28.06.2017 - 19:46
nastushka p2004r, суперски
leo_biostat, а можете как и p2004... 28.06.2017 - 20:39
p2004r Цитата(nastushka @ 28.06.2017 - 20:3... 28.06.2017 - 23:14
nastushka Что касается данных, то такие переменные как:
x3 x... 28.06.2017 - 21:23
nokh Цитата(nastushka @ 29.06.2017 - 00:2... 28.06.2017 - 22:38
nastushka nokh, а как это сделать?)) Имеете ввиду регрессию ... 29.06.2017 - 11:46
nastushka манагер одобрил удалять совпадающие наблюдения
Под... 29.06.2017 - 18:01
p2004r Цитата(nastushka @ 29.06.2017 - 18:0... 29.06.2017 - 19:49
nastushka фух) я запарилась в ручную это перебирать)) p2004r... 30.06.2017 - 18:23
p2004r Цитата(nastushka @ 30.06.2017 - 18:2... 30.06.2017 - 23:53
nastushka p2004r
смотрите, у меня родилась мысль
вот резуль... 2.07.2017 - 15:21
p2004r Цитата(nastushka @ 2.07.2017 - 15:21... 2.07.2017 - 15:42
nastushka p2004r, у меня все получилось:)
Но возник такой в... 2.07.2017 - 20:54
p2004r Цитата(nastushka @ 2.07.2017 - 20:54... 3.07.2017 - 22:13
nastushka Терпение и труд, все перетрут) Сделала, но вот гуг... 3.07.2017 - 17:25
p2004r Цитата(nastushka @ 3.07.2017 - 17:25... 3.07.2017 - 22:10
nastushka Y это isOneDay
поскольку мне сдавать нужно ,я пере... 4.07.2017 - 14:54
nastushka Да, Вы правы! p2004r, последний вопрос, интерп... 5.07.2017 - 17:51
p2004r Цитата(nastushka @ 5.07.2017 - 17:51... 5.07.2017 - 21:33
nastushka с RoC получилось разобраться. А как мне в отчете п... 6.07.2017 - 17:15
p2004r Цитата(nastushka @ 6.07.2017 - 17:15... 8.07.2017 - 23:06
nastushka p2004r, подскажите
я рассчитала spec and sens
как ... 12.07.2017 - 15:08
nastushka spec=0,06,sens=0.94 12.07.2017 - 15:12
p2004r Цитата(nastushka @ 12.07.2017 - 15:1... 12.07.2017 - 18:49
nastushka И такой вопросик
data(ROCR.simple)
threshold1 ... 12.07.2017 - 18:34
p2004r Цитата(nastushka @ 12.07.2017 - 18:3... 12.07.2017 - 18:43
nokh Похоже мой ответ на письмо в личку не дошёл, дубли... 12.07.2017 - 18:35
p2004r Цитата(nokh @ 12.07.2017 - 18:35) По... 12.07.2017 - 18:41
nastushka не-не он дошел, только что прочла:))) 12.07.2017 - 18:36
nastushka поняла 12.07.2017 - 18:56
nastushka я просто так считала 12.07.2017 - 18:59
nastushka sensetivity=tp/(tp+fn) доля верных предсказаний п... 12.07.2017 - 19:00
DrgLena spe=1-0,06=0,94 12.07.2017 - 19:24
nastushka вы имеете ввиду, что 0,06 это чувствительность? 12.07.2017 - 19:46
100$ Цитата(nastushka @ 12.07.2017 - 19:4... 12.07.2017 - 20:35
DrgLena Нет, вы привели таблицу из которой можно посчитат... 12.07.2017 - 20:37
nastushka все поняла ошибку. 12.07.2017 - 20:45
nastushka p2004r, здравствуйте, решила написать в своем же т... 5.08.2017 - 17:10
p2004r Цитата(nastushka @ 5.08.2017 - 17:10... 6.08.2017 - 14:29
nastushka у меня AUc=0.55, в R считала, неужели мне никак мо... 6.08.2017 - 14:57
p2004r Цитата(nastushka @ 6.08.2017 - 14:57... 6.08.2017 - 16:39
nastushka Кстати точно, попробую, прологарифмировать.
Подска... 6.08.2017 - 17:53
p2004r Цитата(nastushka @ 6.08.2017 - 17:53... 6.08.2017 - 20:19
nastushka p2004r, подскажите, пожалуйста, а как мне нарисова... 8.08.2017 - 11:45
p2004r Цитата(nastushka @ 8.08.2017 - 11:45... 8.08.2017 - 19:08
nastushka p2004r, Ваше мнение, как Вы считаете имеет ли мест... 9.08.2017 - 15:43
p2004r Цитата(nastushka @ 9.08.2017 - 15:43... 10.08.2017 - 00:16
nastushka Т.е. вы считаете, что такую верификацию из двух ме... 10.08.2017 - 11:16
p2004r Цитата(nastushka @ 10.08.2017 - 11:1... 10.08.2017 - 16:50
nastushka p2004r, я пробовала работать с тремя этими пакетам... 12.08.2017 - 13:35
p2004r Цитата(nastushka @ 12.08.2017 - 13:3... 14.08.2017 - 16:27![]() ![]() |