-
Notifications
You must be signed in to change notification settings - Fork 0
/
insurance.R
executable file
·67 lines (42 loc) · 1.78 KB
/
insurance.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
##################################################
"Khaled Ben Abdallah - Assurances Belges"
##################################################
##################################################
"2.1 Import des coordonnées factorielles
et représentation du premier plan factoriel"
##################################################
votre_dossier = "YOUR_FOLDER"
setwd(votre_dossier)
cooord_assur_bel = read.csv("ACM_coordonnees.csv", header = TRUE)
#Supprimer colonnes vides
cooord_assur_bel <- Filter(function(x)!all(is.na(x)), cooord_assur_bel)
plot(cooord_assur_bel[,1:2], habillage=1)
title(main = "Assurés sur le premier plan factoriel")
##################################################
"2.2 Modèle logistique"
##################################################
install.packages("sas7bdat")
library(sas7bdat)
classification_sinistre = read.sas7bdat("../classification_sinistre.sas7bdat")
#Ajouter la colonne à prédire
cooord_assur_bel <- cbind(cooord_assur_bel, SINISTRALITE=classification_sinistre[,2])
#Verifier type var à expliquer : catégoriel
is.factor(cooord_assur_bel$SINISTRALITE)
#Construire le modèle
modele <- glm(SINISTRALITE ~.,family=binomial(link='logit'),data=cooord_assur_bel)
#Résultats
summary(modele)
#la valeur prédite
SIN_predit <- predict(modele, type = 'resinstall.packages("ROCR")ponse')
##################################################
"2.3 Pourcentage de mal classés et courbe ROC"
##################################################
#Matrice de confusion
prop.table(table(cooord_assur_bel$SINISTRALITE, SIN_predit > 0.5))*100
#Courbe ROC
library(ROCR)
ROCRpred <- prediction(SIN_predit, cooord_assur_bel$SINISTRALITE)
ROCRperf <- performance(ROCRpred, 'tpr','fpr')
plot(ROCRperf, colorize = TRUE)
#AUC
AUC.tmp <- performance(ROCRpred ,"auc")