1. 程式人生 > >R語言-來自Prosper的貸款數據探索

R語言-來自Prosper的貸款數據探索

理解 比較 7月 特點 成交 查詢 reverse 多變量 meow

案例分析:Prosper是美國的一家P2P在線借貸平臺,網站撮合了一些有閑錢的人和一些急用錢的人。用戶若有貸款需求,可在網站上列出期望數額和可承受的最大利率。潛在貸方則為數額和利率展開競價。

    本項目擬通過該數據集的探索,結合自己的理解進行分析,最終目的的是初步預測哪些人貸款後會還款、哪些人會賴賬。

  1.探索數據集

1 loandata = read.csv("prosperLoanData.csv")
2 str(loandata)

  結論:一共有81個變量,113937個對象

  2.選擇分析的變量

由於有81個變量,為簡化分析,僅選取其中有代表性的13個變量。變量選取如下:

1. **ListingCreation**: 列表創建時間。 2. **Term**: 貸款期限,期限越長的,利率應當越高 3. **LoanStatus**: 貸款狀態(Completed、Current、Defaulted、Chargedoff等) 4. **BorrowerBorrowerRate**: 借款利率。 5. **DelinquenciesLast7Years**: 信用資料提交時借款人過去7年違約次數。 6. **StatedMonthlyIncome**: 客戶自己聲稱的月收入。 7. **IsBorrowerHomeowner**: 借款人是否擁有住房。
8. **InquiriesLast6Months**: 最近6個月的征信記錄查詢次數。一般來說,征信查詢次數越多,該主體的貸款申請就越多。 9. **DebtToIncomeRatio**: 借款人的債務收入比,債務收入比越高說明籌資者財務狀況越差,還款能力越低。 10. **Occupation**: 貸款人職業 11. **CreditGrade/ProsperRating(Alpha)**: 信用等級,前者反映的是2009年7月1日前客戶的信用等級,後者反映的是2009年7月1日後的信用等級。信用等級越高,其償債能力越強。 12. **CreditScore**: 由消費信用公司提供的消費信用評分,同信用評級作用。
13. **BankCardUse**: 信用資料提交時借款人信用卡使用額度和信用卡總透支額度的百分比,本文將這個數據分成四組(mild use; medium use; heavy use; super use)

  3.數據預處理

    3.1貸款狀態

# 查看貸款狀態
1
table(loandata$LoanStatus)

技術分享圖片

    

 # 2.整合數據
# 針對LoanStatus進行重構
# 1.將所有含有"Past Due"字段的值統一為"PastDue"
# 2.將"Cancelled"歸類到"Current"中
# 3.將"defaulted"歸類到"Chargedoff"中
# 4.將"FinalPaymentInProgress"歸類到"Completed"中
1
PastDue <- c("Past Due (>120 days)", 2 "Past Due (1-15 days)", 3 "Past Due (16-30 days)", 4 "Past Due (31-60 days)", 5 "Past Due (61-90 days)", 6 "Past Due (91-120 days)") 7 loandata$LoanStatus <- as.character(loandata$LoanStatus) 8 loandata$LoanStatus[loandata$LoanStatus %in% PastDue] <- "PastDue" 9 loandata$LoanStatus[loandata$LoanStatus == "Cancelled"] <- "Current" 10 loandata$LoanStatus[loandata$LoanStatus == "Defaulted"] <- "Chargedoff" 11 loandata$LoanStatus[loandata$LoanStatus == "FinalPaymentInProgress"] <- "Completed"

 技術分享圖片

1 # 3.再次整合數據
2 # 1.然後將"PastDue"與"Chargedoff"合並,表示未按時還款
3 # 2.將"Current"和"Completed"合並,表示按時還款未出現不良記錄的
4 loandata$LoanStatus[loandata$LoanStatus == "PastDue"] <- "Chargedoff"
5 loandata$LoanStatus[loandata$LoanStatus == "Current"] <- "Completed"
6 table(loandata$LoanStatus)

技術分享圖片

    3.2消費信用評分

1 # 對借款人的消費信用評級,數據中有高低範圍,將這兩個數值取平均值做計算
2 loandata$CreditScore <- (loandata$CreditScoreRangeLower + loandata$CreditScoreRangeUpper) / 2

    3.3信用評級

 1 # 因2009年7月1日,Prosper的信用評級模型發生了改變,所以需要進行分段處理
 2 
 3 # 先處理2009年7月1日前的數據
 4 loandata$CreditGrade <- ordered(loandata$CreditGrade,
 5                                 levels = c("NC", "HR", "E", "D", "C", "B", "A", "AA"))
 6 # 再處理2009年7月1日後的數據
 7 loandata$ProsperRating..Alpha. <- ordered(loandata$ProsperRating..Alpha.,
 8                                           levels = c("HR", "E", "D", "C", "B", "A", "AA"))
 9 # 因為2009年7月1日是一個數據節點,因此將數據分成兩段處理
10 loandata$LoanOriginationDate <- as.Date(loandata$LoanOriginationDate)
11 loandata$Phase[loandata$LoanOriginationDate > "2009-07-01"] <- "After 2009"
12 loandata$Phase[loandata$LoanOriginationDate < "2009-07-01"] <- "Before 2009"
13 table(loandata$Phase)

技術分享圖片

    3.4信用卡使用程度

 1 #定義"Mild Use"
 2 loandata$BankCardUse[
 3     loandata$BankcardUtilization < quantile(loandata$BankcardUtilization, 
 4                                             probs = 0.25, "na.rm" = TRUE)
 5 ] <- "Mild Use"
 6 
 7 #定義“Medium Use”
 8 loandata$BankCardUse[
 9     loandata$BankcardUtilization >= quantile(loandata$BankcardUtilization,
10                                              probs = 0.25, "na.rm" = TRUE) 
11     &
12         loandata$BankcardUtilization < quantile(loandata$BankcardUtilization,
13                                                     probs = 0.5, "na.rm"= TRUE)
14 ] <- "Medium Use"
15 
16 #定義“Heavy Use”
17 loandata$BankCardUse[
18     loandata$BankcardUtilization >= quantile(loandata$BankcardUtilization,
19                                              probs = 0.5, "na.rm" = TRUE)
20     &
21         loandata$BankcardUtilization < quantile(loandata$BankcardUtilization,
22                                                 probs = 0.75, "na.rm" = TRUE)
23 ] <- "Heavy Use"
24 
25 #定義“Super Use”
26 loandata$BankCardUse[loandata$BankcardUtilization >= 0.75] <- "Super Use"
27 
28 loandata$BankCardUse <- factor(loandata$BankCardUse,
29                                levels = c("Mild Use", 
30                                           "Medium Use", 
31                                           "Heavy Use", 
32                                           "Super Use"))
33 
34 table(loandata$BankCardUse)

技術分享圖片

  4.探索數據集

    4.1單變量探索

      4.1.1貸款期限

1 ggplot(aes(x = as.factor(Term)), data = loandata) +
2     geom_histogram(stat = "count") +
3     xlab("Term")
4 table(loandata$Term, dnn = ("Term"))

技術分享圖片

  技術分享圖片

        結論:一年期(12個月)的有1614筆,三年期(36個月)的有87778筆,五年期(60個月)的有24545筆。由此,平臺上的貸款以中長期為主,且三年期占絕大多數。經查閱資料發現,Prosper平臺是          2009年以後才開始提供一年期和五年期貸款品種。

        4.1.2貸款利率

ggplot(aes(x = BorrowerRate), data = loandata) +
    geom_histogram(binwidth = 0.01) +
    scale_x_continuous(breaks = seq(0, 0.5, 0.05)) +
    facet_wrap(~ Term, ncol = 3)

技術分享圖片

        結論:平臺上的借款利率多集中在0.08至0.2這個區間,另外,利率0.32附近也擁有大量的觀測值。並且貸款利率似乎與貸款期限關系並不明顯,未如經驗判斷的“期限越長、利率越高”。

        4.1.3過去7年的違約次數

1 ggplot(aes(x = DelinquenciesLast7Years), data = loandata) +
2     geom_density(aes(fill = I("grey"))) +
3     coord_cartesian(xlim = c(0, quantile(loandata$DelinquenciesLast7Years,
4                                                probs = 0.95, "na.rm" = TRUE)))

技術分享圖片

        結論:大部分借款人在過去7年內的違約次數均為0,這說明整個平臺借款人的信用狀況較好

        4.1.4月收入,月收入很大情況下能夠反映借貸人的還款能力

1 ggplot(aes(x = StatedMonthlyIncome), 
2        data = subset(loandata, loandata$StatedMonthlyIncome <
3                          quantile(loandata$StatedMonthlyIncome, 
4                                   probs = 0.95, "na.rm" = TRUE))) +
5     geom_histogram(binwidth = 500) +
6     scale_x_continuous(breaks = seq(0, 21000, 500)) +
7     geom_vline(xintercept = 2500, color = "red") +
8     geom_vline(xintercept = 6000, color = "red")

技術分享圖片

        結論:大部分借貸人的月薪在2500~6000美金之間

        4.1.5是否擁有房屋(有房子的要比沒有房屋的人償還能力強)

1 ggplot(aes(x = IsBorrowerHomeowner), data = loandata) +
2     geom_bar()

技術分享圖片

        結論:有房屋的借貸人略微大於沒房屋的借貸人

        4.1.6借款人征信查詢的次數,征信查詢的次數越多表示借款人近期的申請的貸款越多,資金越緊張

ggplot(aes(x = InquiriesLast6Months, fill = I("grey")), data = loandata) +
    geom_density(binwidth = 1) +
    geom_vline(xintercept = quantile(loandata$InquiriesLast6Months, 
                                     probs = 0.95, "na.rm" = TRUE), 
               linetype = "dashed", color = "red") +
    coord_cartesian(xlim = c(0, quantile(loandata$InquiriesLast6Months,
                                         probs = 0.95, "na.rm" = TRUE)))

技術分享圖片

        結論:95%的借款人征信查詢次數在5次及以下

        4.1.7負債收益比(反映了借款人的杠桿率,如果大於1表示很難償還貸款,極易引發壞賬)

1 ggplot(aes(x = DebtToIncomeRatio), data = loandata) +
2     geom_histogram(binwidth = 0.05) +
3     scale_x_continuous(breaks = seq(0, 10, 0.5)) +
4     geom_vline(xintercept = quantile(loandata$DebtToIncomeRatio, 
5                                      probs = 0.95, "na.rm" = TRUE),
6                linetype = "dashed", color = "red")

技術分享圖片

        結論:95%的借款人負債收入比小於0.5,另外註意到,極少數人的負債收入比達到甚至超過10,總體來說平臺的負債收益比較低,資質較好

        4.1.8借款人職業

data_count <- loandata %>% 
    group_by(Occupation) %>% 
    summarise(n = n())

ggplot(aes(x = reorder(Occupation, -n), y = n),
       data = data_count) +
    geom_bar(stat = "identity") +
    theme(axis.text.x = element_text(angle = 90,
                                     vjust = 0.5,
                                     hjust = 1))

技術分享圖片

        結論:職業中,選擇“other”的人數最多,說明很多人在申請貸款時出於隱私或者其他原因不選擇職業,該數據的真實性存疑

        4.1.9貸款狀態

ggplot(aes(x = LoanStatus), data = loandata) +
    geom_bar()
table(loandata$LoanStatus)

技術分享圖片

技術分享圖片

        結論:Prosper平臺整體貸款的違約率約為16.74%

        4.1.10貸款日期

1 loandata$ListingCreationDate <- as.Date(loandata$ListingCreationDate)
2 
3 ggplot(aes(x = ListingCreationDate), data = loandata) +
4     geom_histogram()

技術分享圖片

        結論:09年前後,平臺貸款成交量幾乎為0,通過查閱相關資料發現,Prosper平臺因涉訴被迫於2008年11月24日暫停運營,並於2009年7月1日重新開始營運。

        4.1.11客戶信用評價

 1 p1 <- ggplot(aes(x = CreditScore), data = loandata) +
 2     geom_histogram()+
 3     coord_cartesian(xlim = c(400, 900)) +
 4     scale_x_continuous(breaks = seq(400, 900, 50)) +
 5     ggtitle("The Histogram of Borrowers‘ CreditScore")
 6 
 7 p2 <- ggplot(aes(x = CreditGrade),
 8              data = subset(loandata, LoanOriginationDate < "2009-07-01")) +
 9     geom_bar() +
10     scale_x_discrete(limits = c("HR","E","D","C","B","A","AA")) +
11     ggtitle("CreditGrade Before 2009")
12     
13 p3 <- ggplot(aes(x = ProsperRating..Alpha.),
14              data = subset(loandata, LoanOriginationDate > "2009-07-01")) +
15     geom_bar() +
16     scale_x_discrete(limits = c("HR","E","D","C","B","A","AA")) +
17     ggtitle("CreditGrade After 2009")
18 
19 grid.arrange(p1, p2, p3, ncol = 1)

技術分享圖片

        結論:大部分借款人的消費信用評分都高於600分,集中於700分左右,而2009年前後的信用評級也顯示出較為優秀的信用資質B級。
        4.1.12信用卡使用情況

1 ggplot(aes(BankCardUse), 
2        data = subset(loandata, !is.na(BankcardUtilization))) +
3     geom_bar()

技術分享圖片

        結論:大部分人都處於Super Use狀態,借款人的還款能力會因此而打折扣

     單變量分析總結論: 

數據集中共含有113937筆貸款記錄,每筆記錄均有12個特征描述,分別是:貸款日期(ListingCreationDate)、貸款期限(Term)、貸款狀態(LoanStatus)、貸款利率(BorrowerRate)、借款人過去7年違約次數(DelinquenciesLast7Years)、借款人月收入(StatedMonthlyIncome)、借款人是否擁有房屋(IsBorrowerHomeowner)、借款人最近6個月的征信查詢次數(InquiriesLast6Months)、借款人負債收入比(DebtToIncomeRatio)、借款人職業(Occupation)、借款人信用評價(CreditScore / CreditGrade / ProsperRating(Alpha))及借款人的信用卡使用情況(BankCardUse)。

這12個特征中,有4個特征用於描述貸款的特點,包括貸款日期、貸款期限、貸款狀態和貸款利率。

有8個特征用於描述借款人主體的特點,包括過去7年違約次數、月收入、是否擁有房屋、最近6個月的征信查詢次數、負債收入比、職業、信用評價及信用卡使用情況。

通過上一部分的初步探索,發現以下特點:

1. 大部分貸款的期限為三年期。

2. 整個平臺貸款的違約率為16.74%3. 大部分貸款利率集中在0.08至0.2這個區間,0.32附近也有較大的成交量。

4. 平臺上的借款人整體信用資質較好。

5. 從信用卡使用角度來看,借款人的還款壓力較大。

6. 大部分借款人的月收入集中在2500至6000美元之間。

7. 擁有房屋的借款人與未擁有房屋的借款人數量大致相當。

8. 出於隱私或者其他原因,借款人申請貸款時職業一項選擇“other”的極多。

      4.2雙變量探索

        4.2.1貸款利率隨著時間變化的趨勢

ggplot(aes(x = ListingCreationDate, y = BorrowerRate), data = loandata) +
    geom_point(alpha = 0.05) +
    facet_wrap(~Term)

 技術分享圖片

        結論:一年期與五年期貸款是在2011年前後才上線的產品。三年期是整個平臺最主要的貸款,

          2008年以前,貸款利率主要分布在0.08至0.2這個區間,隨著美國次貸危機的持續發酵2010年利率逐漸分化,優質借款人依舊可以拿到0.1甚至更低的利率,而更多的借款人則需要以0.2以上甚至           0.35的利率方可籌到資金。為了救市美聯儲實行了量化寬松政策,持續向市場中註入大量流動性,利率承壓下行。至2014年,可以看到各個利率層面均有大量的成交記錄信貸市場逐漸恢復元氣。

        4.2.2貸款利率與貸款狀態

1 ggplot(aes(x = LoanStatus, y = BorrowerRate), data = loandata) +
2     geom_boxplot()

技術分享圖片

        結論:違約貸款組的利率明顯高於正常還款組。一方面,貸款定價高是由於借款人自身資質差;另一方面,高利率又使得借款人更加難以承受進而違約

        4.2.3貸款利率與過去7年違約次數

1 ggplot(aes(x = DelinquenciesLast7Years, y = BorrowerRate), 
2        data = subset(loandata, 
3                      loandata$DelinquenciesLast7Years <
4                          quantile(loandata$DelinquenciesLast7Years,
5                                   probs = 0.95, "na.rm" = TRUE))) +
6     geom_point(alpha = 0.05, position = "jitter") +
7     geom_smooth()

技術分享圖片

        結論:95%的借款人過去7年違約次數低於23次,違約次數低於3次時,違約次數與貸款利率呈現出弱正相關性;而3次以後兩者關系就趨於平穩。

        4.2.4貸款利率和借款人月收入的關系

1 ggplot(aes(x = StatedMonthlyIncome, y = BorrowerRate), 
2        data = subset(loandata, !is.na(loandata$StatedMonthlyIncome))) +
3     stat_density2d(aes(alpha = ..density..), geom = "tile", contour = FALSE) +
4     scale_x_continuous(limits = c(0, 30000))

技術分享圖片

        結論:平臺的借貸人月收入在10000美金以下,未發現貸款利率和月收入存在關系

        4.2.5貸款利率與借款人是否擁有房屋之間的關系

1 ggplot(aes(x = BorrowerRate), data = loandata) +
2     geom_histogram() +
3     geom_hline(yintercept = 3000, linetype = "dashed", color = "red") +
4     facet_wrap(~IsBorrowerHomeowner, ncol = 1)

技術分享圖片

        結論:擁有房屋的人比沒有房屋的人貸款的利息更低

        4.2.6貸款利率與過去6個月征信查詢次數的關系

1 ggplot(aes(x = as.factor(InquiriesLast6Months), y = BorrowerRate), 
2        data = subset(loandata, loandata$InquiriesLast6Months <
3                          quantile(loandata$InquiriesLast6Months, 
4                                   probs = 0.95, "na.rm" = TRUE))) +
5     geom_boxplot() +
6     xlab("InquiriesLast6Months")

技術分享圖片

        結論:征信查詢的次數越多,貸款的利率越高

        4.2.7貸款利率和負債收益比的關系

1 ggplot(aes(x = DebtToIncomeRatio, y = BorrowerRate), 
2        data = subset(loandata, loandata$DebtToIncomeRatio <
3                          quantile(loandata$DebtToIncomeRatio, 
4                                   probs = 0.95, "na.rm" = TRUE))) +
5     geom_point(alpha = 0.05, position = "jitter") +
6     stat_smooth(color = "red")

技術分享圖片

        結論:借款人的收入負債比越高,貸款利率也越高

        4.2.8貸款利率和信用評分的關系

1 ggplot(aes(x = CreditScore, y = BorrowerRate), data = loandata) +
2     geom_point(alpha = 0.05) +
3     facet_wrap(~Phase, ncol = 1) +
4     coord_cartesian(xlim = c(400, 900), ylim = c(0, 0.4)) +
5     geom_line(stat = "summary", fun.y = mean) +
6     geom_line(stat = "summary", fun.y = median, linetype = 2, color = "red") +
7     geom_vline(xintercept = 600, color = "red")

技術分享圖片

        結論:在2009年之前,Prosper還會為消費信用評級低於600分的借款人提供服務,在2009年重新上線之後,不再為評分低於600分的客戶服務

        4.2.9貸款利率和信用等級的關系

# 2009年7月1日以前
ggplot(aes(x = CreditGrade, y = BorrowerRate), 
       data = subset(loandata, LoanOriginationDate < "2009-07-01")) +
    scale_x_discrete(limits = c("HR", "E", "D", "C", "B", "A", "AA")) +
    geom_boxplot() +
    stat_summary(fun.y = mean, geom = "point", shape = 4) +
    stat_summary(fun.y = mean, geom = "smooth", aes(group = 1))


# 2009年7月1日以後
ggplot(aes(x = ProsperRating..Alpha., y = BorrowerRate),
       data = subset(loandata, LoanOriginationDate > "2009-07-01")) +
    geom_boxplot() +
    scale_x_discrete(limits = c("HR", "E", "D", "C", "B", "A", "AA")) +
    stat_summary(fun.y = mean, geom = "point", shape = 4) +
    stat_summary(fun.y = mean, geom = "smooth", aes(group = 1))

技術分享圖片

技術分享圖片

        結論:通過比較2009年7月1日前後貸款利率與借款人信用評級之間的關系發現,2009年7月1日後圖形的均值連線明顯斜率更大,說明Prosper在涉訴恢復運營後更為重視借款人的信用評級,評級對貸款           利率的影響權重更大了。

      總結論:

通過探索貸款利率與其他變量之間的關系,大致得出以下結論:

1. 貸款利率與過去7年的違約次數、過去6個月征信查詢次數及負債收入比呈現出正相關關系。

2. 貸款利率似乎與借款人的月收入水平關系不明確。

3. 擁有房屋的借款人相比未擁有房屋的借款人更能夠以較低利率籌得資金。

4. Prosper平臺在2009年7月1日後似乎增加了信用評級對貸款利率的影響權重,並且不再對消費信用評分低於600分的借款人提供服務。

      4.3多變量分析

        4.3.1貸款日期和貸款利率和貸款狀態之間的關系

1 ggplot(aes(x = ListingCreationDate, y = BorrowerRate, color = LoanStatus), data = loandata) +
2     geom_point(alpha = 0.05) +
3     guides(colour = guide_legend(override.aes = list(alpha = 1, size = 5)))

技術分享圖片

        結論:2009年之前的違約數遠大於2009年之後,且利息越高違約率就越大

        4.3.2貸款利率與消費信用評分及貸款狀態的關系

1 ggplot(aes(x = CreditScore, y = BorrowerRate, color = LoanStatus),
2        data = loandata) +
3     geom_point(alpha = 0.05, position = "jitter") +
4     coord_cartesian(xlim = c(400, 900), ylim = c(0, 0.4)) +
5     facet_wrap(~Phase, ncol = 1) +
6     guides(color = guide_legend(override.aes = list(alpha = 1, size = 5)))

技術分享圖片

        結論:在2009年之前的債務違約明顯很多,並且是以信用評分較低的且貸款利率較高客戶為主,2009年之後平臺不再為信用評分低於600的客戶提供貸款,貸款的質量有了明顯提升

           也可以看出信用評分越高的客戶,貸款的利率越低

        4.3.3貸款利率與貸款總額及信用評級的關系

 1 # 2009年7月1日之前
 2 ggplot(aes(x = LoanOriginalAmount, y = BorrowerRate, color = CreditGrade),
 3        data = subset(loandata, LoanOriginationDate < "2009-07-01" & CreditGrade != "NC")) +
 4     geom_point(alpha = 0.5, position = "jitter") +
 5     scale_color_brewer(type = "seq", 
 6                        guide = guide_legend(title = "CreditGrade", reverse = F,
 7                                             override.aes = list(alpha = 1, size = 5))) +
 8     facet_wrap(~LoanStatus, ncol = 1)
 9 
10 # 2009年7月1日之後
11 ggplot(aes(x = LoanOriginalAmount, y = BorrowerRate, color = ProsperRating..Alpha.), 
12        data = subset(loandata, LoanOriginationDate > "2009-07-01" &
13                          !is.na(ProsperRating..Alpha.))) +
14     geom_point(alpha = 0.5) +
15     scale_color_brewer(type = "seq", 
16                        guide = guide_legend(title = "ProsPerRating", reverse = F,
17                                             override.aes = list(alpha = 1, size = 5))) +
18     facet_wrap(~LoanStatus, ncol = 1)

技術分享圖片

技術分享圖片

        結論:在2009年7月1日之後,Prosper將最大的貸款金額有25000提升到了35000,並且只針對信用評級為B以上的客戶,隨著貸款的金額越高利率在逐漸降低,此外平臺的違約貸款都是由HR和E等級的客戶導           致的

        4.3.4貸款利率與貸款總額與信用卡使用頻率的關系

 1 # 2009年7月1日之前
 2 ggplot(aes(x = LoanOriginalAmount, y = BorrowerRate, color = BankCardUse),
 3        data = subset(loandata, LoanOriginationDate < "2009-07-01" & 
 4                          !is.na(BankCardUse))) +
 5     geom_point(alpha = 0.5) +
 6     scale_color_brewer(type = "qual",
 7                        guide = guide_legend(title = "BankCardUse", reverse = T,
 8                                             override.aes = list(alpha = 1, size = 5))) +
 9     facet_wrap(~LoanStatus, ncol = 1)
10 
11 # 2009年7月1日之後
12 ggplot(aes(x = LoanOriginalAmount, y = BorrowerRate, color = BankCardUse),
13        data = subset(loandata, LoanOriginationDate > "2009-07-01" &
14                          !is.na(BankCardUse))) +
15     geom_point(alpha = 0.5) +
16     scale_color_brewer(type = "div",
17                        guide = guide_legend(title = "BankCardUse", reverse = T,
18                                             override.aes = list(alpha = 1, size = 5))) +
19     facet_wrap(~LoanStatus, ncol = 1)

技術分享圖片

技術分享圖片

        結論:從信用卡的使用情況來看,時間節點前後並無明顯變化。但是,違約貸款中,信用卡使用情況為Mild Use的借款人占比極低;相對的,信用卡使用情況為Super Use的客戶占比卻極高,這也印證了           前文的判斷,信用卡的超額透支會對借款人的還款能力產生較大的負面影響。

      總結論:

本部分通過分時間節點、分貸款狀態更為深入的探索了多重變量之間的關系,發現如下特點:

1. 2009年以前貸款違約數量明顯高於2009年以後的數量,且利率越高,違約率越高!

2. 消費信用評分越高的借款人,其貸款利率也相對越低。

3. 2009年以前,Prosper限制了最大借款金額為25000美元,而在2009年以後放寬限制至35000美元,且似乎只針對信用評級B級以上的客戶開放申請。並且隨著貸款金額的增加,貸款利率在逐漸降低。

4. 信用評級為“HR”和“E”的借款人在違約組中的比例明顯較高。

5. 信用卡使用情況為Super Use的借款人在違約組中的比例明顯較高,使用情況為Mild Use的借款人在違約組中的占比極低。

5.擬合因子,驗證相關性

# 2009年7月1日之前
m1 <- lm(I(BorrowerRate)~I(CreditScore),
         data=subset(loan_data,
                     loan_data$LoanOriginationDate <= 2009-07-01 
                      & !is.na(CreditScore) 
                      & !is.na(CreditGrade) 
                      & !is.na(LoanOriginalAmount) 
                      & !is.na(BankCardUse)))
m2 <- update(m1,~ . + CreditGrade)
m3 <- update(m2,~ . + LoanOriginalAmount)
m4 <- update(m3,~ . + BankCardUse)
mtable(m1,m2,m3,m4)
# 2009年7月1日之後
m5 <- lm(I(BorrowerRate)~I(CreditScore),
         data=subset(loan_data,
                     loan_data$LoanOriginationDate > 2009-07-01 
                      & !is.na(CreditScore) 
                      & !is.na(ProsperRating..Alpha.) 
                      & !is.na(LoanOriginalAmount) 
                      & !is.na(BankCardUse)))
m6 <- update(m5,~ . + ProsperRating..Alpha.)
m7 <- update(m6,~ . + LoanOriginalAmount)
m8 <- update(m7,~ . + BankCardUse)
mtable(m5,m6,m7,m8)

技術分享圖片

技術分享圖片

  結論:從表上看出2者的P值都是0說明擬合的較好,在2009年7月1日之前的R2是0.5左右,2009年7月1日之後的R2是0.9左右,說明平臺降低了對信用評分的權重,加強信用等級的權重

R語言-來自Prosper的貸款數據探索