library(ROCR)
library(caTools)
# загрузка данных
data=read.csv('data.csv')
# деление данных на обучающую/тестовую выборку
set.seed(123)
split=sample.split(data$y,SplitRatio=0.7)
data.train=data[split,]
data.test=data[!split,]
# построение модели
data.model=mean(data.train$y)
# предсказание вероятностей на обучающей выборке
data.train.prob=rep_len(data.model,nrow(data.train))
# предсказание классов на обучающей выборке
data.train.class=+(data.train.prob>=0.5)
# точность (accuracy) на обучающей выборке
data.train.acc=mean(data.train$y==data.train.class)
# чувствительность на обучающей выборке
data.train.sen=mean(data.train.class[data.train$y==1]==1)
# специфичность на обучающей выборке
data.train.spe=mean(data.train.class[data.train$y==0]==0)
# AUC на обучающей выборке
data.train.auc=performance(
prediction(data.train.prob,data.train$y),'auc'
)@y.values[[1]]
# предсказание вероятностей на тестовой выборке
data.test.prob=rep_len(data.model,nrow(data.test))
# предсказание классов на тестовой выборке
data.test.class=+(data.test.prob>=0.5)
# точность (accuracy) на тестовой выборке
data.test.acc=mean(data.test$y==data.test.class)
# чувствительность на тестовой выборке
data.test.sen=mean(data.test.class[data.test$y==1]==1)
# специфичность на тестовой выборке
data.test.spe=mean(data.test.class[data.test$y==0]==0)
# AUC на тестовой выборке
data.test.auc=performance(
prediction(data.test.prob,data.test$y),'auc'
)@y.values[[1]]
| library(ROCR)
library(caTools)
# загрузка данных
data=read.csv('data.csv')
# деление данных на обучающую/тестовую выборку
set.seed(123)
split=sample.split(data$y,SplitRatio=0.7)
data.train=data[split,]
data.test=data[!split,]
# построение модели
data.model=glm(y~.,data=data.train,family=binomial)
# предсказание вероятностей на обучающей выборке
data.train.prob=predict(data.model,type='response')
# предсказание классов на обучающей выборке
data.train.class=+(data.train.prob>=0.5)
# точность (accuracy) на обучающей выборке
data.train.acc=mean(data.train$y==data.train.class)
# чувствительность на обучающей выборке
data.train.sen=mean(data.train.class[data.train$y==1]==1)
# специфичность на обучающей выборке
data.train.spe=mean(data.train.class[data.train$y==0]==0)
# AUC на обучающей выборке
data.train.auc=performance(
prediction(data.train.prob,data.train$y),'auc'
)@y.values[[1]]
# предсказание вероятностей на тестовой выборке
data.test.prob=predict(data.model,newdata=data.test,type='response')
# предсказание классов на тестовой выборке
data.test.class=+(data.test.prob>=0.5)
# точность (accuracy) на тестовой выборке
data.test.acc=mean(data.test$y==data.test.class)
# чувствительность на тестовой выборке
data.test.sen=mean(data.test.class[data.test$y==1]==1)
# специфичность на тестовой выборке
data.test.spe=mean(data.test.class[data.test$y==0]==0)
# AUC на тестовой выборке
data.test.auc=performance(
prediction(data.test.prob,data.test$y),'auc'
)@y.values[[1]]
| library(ROCR)
library(caTools)
library(rpart)
# загрузка данных
data=read.csv('data.csv')
# деление данных на обучающую/тестовую выборку
set.seed(123)
split=sample.split(data$y,SplitRatio=0.7)
data.train=data[split,]
data.test=data[!split,]
# построение модели
data.model=rpart(y~.,data=data.train)
# предсказание вероятностей на обучающей выборке
data.train.prob=predict(data.model)
# предсказание классов на обучающей выборке
data.train.class=+(data.train.prob>=0.5)
# точность (accuracy) на обучающей выборке
data.train.acc=mean(data.train$y==data.train.class)
# чувствительность на обучающей выборке
data.train.sen=mean(data.train.class[data.train$y==1]==1)
# специфичность на обучающей выборке
data.train.spe=mean(data.train.class[data.train$y==0]==0)
# AUC на обучающей выборке
data.train.auc=performance(
prediction(data.train.prob,data.train$y),'auc'
)@y.values[[1]]
# предсказание вероятностей на тестовой выборке
data.test.prob=predict(data.model,newdata=data.test)
# предсказание классов на тестовой выборке
data.test.class=+(data.test.prob>=0.5)
# точность (accuracy) на тестовой выборке
data.test.acc=mean(data.test$y==data.test.class)
# чувствительность на тестовой выборке
data.test.sen=mean(data.test.class[data.test$y==1]==1)
# специфичность на тестовой выборке
data.test.spe=mean(data.test.class[data.test$y==0]==0)
# AUC на тестовой выборке
data.test.auc=performance(
prediction(data.test.prob,data.test$y),'auc'
)@y.values[[1]]
| library(ROCR)
library(caTools)
library(randomForest)
# загрузка данных
data=read.csv('data.csv')
# деление данных на обучающую/тестовую выборку
set.seed(123)
split=sample.split(data$y,SplitRatio=0.7)
data.train=data[split,]
data.test=data[!split,]
# построение модели
set.seed(456)
data.model=randomForest(y~.,data=data.train)
# предсказание вероятностей на обучающей выборке
data.train.prob=predict(data.model)
# предсказание классов на обучающей выборке
data.train.class=+(data.train.prob>=0.5)
# точность (accuracy) на обучающей выборке
data.train.acc=mean(data.train$y==data.train.class)
# чувствительность на обучающей выборке
data.train.sen=mean(data.train.class[data.train$y==1]==1)
# специфичность на обучающей выборке
data.train.spe=mean(data.train.class[data.train$y==0]==0)
# AUC на обучающей выборке
data.train.auc=performance(
prediction(data.train.prob,data.train$y),'auc'
)@y.values[[1]]
# предсказание вероятностей на тестовой выборке
data.test.prob=predict(data.model,newdata=data.test)
# предсказание классов на тестовой выборке
data.test.class=+(data.test.prob>=0.5)
# точность (accuracy) на тестовой выборке
data.test.acc=mean(data.test$y==data.test.class)
# чувствительность на тестовой выборке
data.test.sen=mean(data.test.class[data.test$y==1]==1)
# специфичность на тестовой выборке
data.test.spe=mean(data.test.class[data.test$y==0]==0)
# AUC на тестовой выборке
data.test.auc=performance(
prediction(data.test.prob,data.test$y),'auc'
)@y.values[[1]]
|