-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLDA_QDA
56 lines (40 loc) · 1.41 KB
/
LDA_QDA
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
require(MASS)
require(ISLR)
require(ggplot2)
require(data.world)
data.world::set_config(save_config(auth_token = "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJwcm9kLXVzZXItY2xpZW50Om5hdGFzaGFwaXJhbmk5NiIsImlzcyI6ImFnZW50Om5hdGFzaGFwaXJhbmk5Njo6YTU4NWU5NmItYWM4ZC00NDAzLWE0MjUtYzc2MDM2ZTY5MjczIiwiaWF0IjoxNTA1MzM2NTM2LCJyb2xlIjpbInVzZXJfYXBpX3dyaXRlIiwidXNlcl9hcGlfcmVhZCIsInVzZXJfYXBpX2FkbWluIl0sImdlbmVyYWwtcHVycG9zZSI6dHJ1ZX0.HRx49T2J1V4cK7rYB7dztiIhYBR3jIGp9BCXi2DNVGdHTv-iRoJekXMeBHzsyenvzdXV4NX_X6QPe5MzIeL7Mg"))
project <- "https://data.world/jdramosf/f-17-eda-project-2"
df <- data.world::query(
data.world::qry_sql("SELECT * FROM data"),
dataset = project
)
summary(df)
attach(df)
print(df)
#LDA w payment timings
df$default <- as.integer(as.logical(df$default))
lda.fit=lda(default~pay_0+pay_2+pay_3, data=df)
lda.fit
plot(lda.fit)
lda.pred=predict(lda.fit)
class(lda.pred)
data.frame(lda.pred)[1:50,]
df1 = data.frame(lda.pred)
head(df)
ggplot(df1) + geom_histogram(mapping = aes(x=LD1)) + facet_wrap(~ class)
table(lda.pred$class,df$default)
mean(lda.pred$class==df$default)
ggplot(df, aes(x = LD1)) + geom_histogram()
ggplot(data=df, aes(default)) + geom_bar()
# QDA
qda.fit=qda(default~pay_0+pay_2+pay_3, data=df)
qda.fit
#plot(qda.fit)
qda.pred=predict(qda.fit)
class(qda.pred)
data.frame(qda.pred)[1:3,]
class(qda.pred)
df1 = data.frame(qda.pred)
head(df1)
table(qda.pred$class,df$default)
mean(qda.pred$class==df$default)