The analysis of credit return by clients helps to determine that whether there is a delay in the payment or not.

The above decision tree tells us whether the client will pay the credit amount next month or not.
1)Green color signifies that person will pay the next payment.
2)Blue color signifies that the person will not pay the next payment.
(i)Percentage shows the percentage of people falling under particular condition.
(ii)The two digit decimal number signifies the probablity of prediction being true.
T
pre_credit
ac 0 1
0 4506 184
1 885 425
The above confusion matrix tells us the number of truely predicted and falsely predicted values.
print(paste("Accuracy of prediction is",accuracy_pred))
[1] "Accuracy of prediction is 0.820166666666667"
So,we get 82%approx accuracy by using our model. However in order to reduce complexity in decision tree and reduce error in prediction, we need to find the optimum value for cp (complexity factor).
#To determine the optimum value of cp
printcp(model_credit)
Classification tree:
rpart(formula = dpm ~ ., data = tr_credit, method = "class",
control = control)
Variables actually used in tree construction:
[1] BILL_AMT1 EDUCATION PAY_0 PAY_2 PAY_3
[6] PAY_5 PAY_6 PAY_AMT4 PAY_AMT5
Root node error: 5326/24000 = 0.22192
n= 24000
CP nsplit rel error xerror xstd
1 0.18456628 0 1.00000 1.00000 0.012087
2 0.00375516 1 0.81543 0.81543 0.011198
3 0.00281637 3 0.80792 0.81581 0.011200
4 0.00244086 4 0.80511 0.81318 0.011186
5 0.00206534 5 0.80267 0.80980 0.011168
6 0.00150207 6 0.80060 0.81074 0.011173
7 0.00056327 7 0.79910 0.80999 0.011169
8 0.00000000 9 0.79797 0.81093 0.011174
From the above cp table we have to check the cp value corresponds to where the error is almost getting constant
We can also check the value for cp by using graph.

From the above graph we get to know moving in right side beyond 0.026 the error is getting almost constant.
So,we can take cp as 0.026 for better result.
Now we can again plot the decision tree with reduced complexity.

This is the new decision tree with reduced complexity as we used the optimum value of cp.
acc_table
pre_credit
ac 0 1
0 4506 184
1 885 425
Hence from the new table we can see that the error in prediction is also reduced.
print(paste("Accuracy of prediction is",accuracy_pred))
[1] "Accuracy of prediction is 0.821833333333333"
Although, selecting the optimum value for cp is very significant method in case of higher complexity but as in our case the complexity was not as much hence our accuracy has improved only by few decimal number from 82 to 82.18%.
LS0tDQp0aXRsZTogIk1hY2hpbmUgTGVhcm5pbmcgQ3JlZGl0IFJpc2sgQW5hbHlzaXMiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KVGhlIGFuYWx5c2lzIG9mIGNyZWRpdCByZXR1cm4gYnkgY2xpZW50cyBoZWxwcyB0byBkZXRlcm1pbmUgdGhhdCB3aGV0aGVyIHRoZXJlIGlzIGEgZGVsYXkgaW4gdGhlIHBheW1lbnQgb3Igbm90Lg0KDQoNCmBgYHtyfQ0KY3JlZGl0X2FuYT1kZWZhdWx0X29mX2NyZWRpdF9jYXJkX2NsaWVudHMNCmhlYWQoY3JlZGl0X2FuYSkNCnN0cihoZWFkKGNyZWRpdF9hbmEpKQ0KDQpgYGANCmBgYHtyfQ0KbGlicmFyeShjYVRvb2xzKQ0KDQpjcmVkaXRfYW5hJFNFWD1mYWN0b3IoY3JlZGl0X2FuYSRTRVgpDQpjcmVkaXRfYW5hJFNFWD1pZmVsc2UoY3JlZGl0X2FuYSRTRVg9PTEsIm1hbGUiLCJmZW1hbGUiKQ0KY3JlZGl0X2FuYSRFRFVDQVRJT049ZmFjdG9yKGNyZWRpdF9hbmEkRURVQ0FUSU9OLGxldmVscyA9IGMoMSwyLDMsNCw1KSkNCmNyZWRpdF9hbmEkTUFSUklBR0U9ZmFjdG9yKGNyZWRpdF9hbmEkTUFSUklBR0UpDQpzcGxpdF9jcmVkaXQ9c2FtcGxlLnNwbGl0KGNyZWRpdF9hbmEsU3BsaXRSYXRpbyA9IDAuOCkNCnRyX2NyZWRpdD1zdWJzZXQoY3JlZGl0X2FuYSxzcGxpdF9jcmVkaXQ9PSJUUlVFIikNCnRzX2NyZWRpdD1zdWJzZXQoY3JlZGl0X2FuYSxzcGxpdF9jcmVkaXQ9PSJGQUxTRSIpDQp0c19jcmVkaXQNCmxpYnJhcnkocnBhcnQpDQpsaWJyYXJ5KHJwYXJ0LnBsb3QpDQoNCmNvbnRyb2w9cnBhcnQuY29udHJvbChtaW5zcGxpdD03LG1pbmJ1Y2tldD1yb3VuZCg3LzMpLG1heGRlcHRoPTQsY3A9MCApDQptb2RlbF9jcmVkaXQ9cnBhcnQoZHBtfi4sZGF0YSA9IHRyX2NyZWRpdCxtZXRob2QgPSAiY2xhc3MiLGNvbnRyb2wgPSBjb250cm9sKQ0KcnBhcnQucGxvdChtb2RlbF9jcmVkaXQpDQpgYGANClRoZSBhYm92ZSBkZWNpc2lvbiB0cmVlIHRlbGxzIHVzIHdoZXRoZXIgdGhlIGNsaWVudCB3aWxsIHBheSB0aGUgY3JlZGl0IGFtb3VudCBuZXh0IG1vbnRoIG9yIG5vdC4NCg0KMSlHcmVlbiBjb2xvciBzaWduaWZpZXMgdGhhdCBwZXJzb24gd2lsbCBwYXkgdGhlIG5leHQgcGF5bWVudC4NCg0KMilCbHVlIGNvbG9yIHNpZ25pZmllcyB0aGF0IHRoZSBwZXJzb24gd2lsbCBub3QgcGF5IHRoZSBuZXh0IHBheW1lbnQuDQoNCiAgKGkpUGVyY2VudGFnZSBzaG93cyB0aGUgcGVyY2VudGFnZSBvZiBwZW9wbGUgZmFsbGluZyAgICAgICAgIHVuZGVyIHBhcnRpY3VsYXIgY29uZGl0aW9uLg0KICANCiAgKGlpKVRoZSB0d28gZGlnaXQgZGVjaW1hbCBudW1iZXIgc2lnbmlmaWVzIHRoZSAgICAgICAgICAgICAgICBwcm9iYWJsaXR5IG9mIHByZWRpY3Rpb24gYmVpbmcgdHJ1ZS4NCg0KYGBge3J9DQojb2J0YWluaW5nIGNvbmZ1c2lvbiBtYXRyaXgNCnByZV9jcmVkaXQ9cHJlZGljdChtb2RlbF9jcmVkaXQsdHNfY3JlZGl0LHR5cGUgPSAiY2xhc3MiKQ0KVD10YWJsZShhYz10c19jcmVkaXQkZHBtLHByZV9jcmVkaXQpDQpUDQoNCmBgYA0KVGhlIGFib3ZlIGNvbmZ1c2lvbiBtYXRyaXggdGVsbHMgdXMgdGhlIG51bWJlciBvZiB0cnVlbHkgcHJlZGljdGVkICBhbmQgZmFsc2VseSBwcmVkaWN0ZWQgdmFsdWVzLg0KYGBge3J9DQojY2hlY2tpbmcgdGhlIGFjY3VyYWN5IG9mIHRoZSBwcmVkaWN0aW9uDQphY2N1cmFjeV9wcmVkPXN1bShkaWFnKHQpKS9zdW0odCkNCnByaW50KHBhc3RlKCJBY2N1cmFjeSBvZiBwcmVkaWN0aW9uIGlzIixhY2N1cmFjeV9wcmVkKSkNCmBgYA0KU28sd2UgZ2V0IDgyJWFwcHJveCBhY2N1cmFjeSBieSB1c2luZyBvdXIgbW9kZWwuDQpIb3dldmVyIGluIG9yZGVyIHRvIHJlZHVjZSBjb21wbGV4aXR5IGluIGRlY2lzaW9uIHRyZWUgYW5kIHJlZHVjZSBlcnJvciBpbiBwcmVkaWN0aW9uLCB3ZSBuZWVkIHRvIGZpbmQgdGhlIG9wdGltdW0gdmFsdWUgZm9yIGNwIChjb21wbGV4aXR5IGZhY3RvcikuDQpgYGB7cn0NCiNUbyBkZXRlcm1pbmUgdGhlIG9wdGltdW0gdmFsdWUgb2YgY3ANCnByaW50Y3AobW9kZWxfY3JlZGl0KQ0KDQpgYGANCkZyb20gdGhlIGFib3ZlIGNwIHRhYmxlIHdlIGhhdmUgdG8gY2hlY2sgdGhlIGNwIHZhbHVlIGNvcnJlc3BvbmRzIHRvIHdoZXJlIHRoZSBlcnJvciBpcyBhbG1vc3QgZ2V0dGluZyBjb25zdGFudA0KDQpXZSBjYW4gYWxzbyBjaGVjayB0aGUgdmFsdWUgZm9yIGNwIGJ5IHVzaW5nIGdyYXBoLg0KYGBge3J9DQojUGxvdHRpbmcgY3ANCnBhcihiZyA9ImdyZXkiKQ0KDQpwbG90Y3AobW9kZWxfY3JlZGl0LGNvbCA9ICJyZWQiKQ0KYGBgDQpGcm9tIHRoZSBhYm92ZSBncmFwaCB3ZSBnZXQgdG8ga25vdyBtb3ZpbmcgaW4gcmlnaHQgc2lkZSBiZXlvbmQgMC4wMjYgdGhlIGVycm9yIGlzIGdldHRpbmcgYWxtb3N0IGNvbnN0YW50Lg0KDQpTbyx3ZSBjYW4gdGFrZSBjcCBhcyAwLjAyNiBmb3IgYmV0dGVyIHJlc3VsdC4NCg0KTm93IHdlIGNhbiBhZ2FpbiBwbG90IHRoZSBkZWNpc2lvbiB0cmVlIHdpdGggcmVkdWNlZCBjb21wbGV4aXR5Lg0KYGBge3J9DQpjb250cm9sPXJwYXJ0LmNvbnRyb2wobWluc3BsaXQ9NyxtaW5idWNrZXQ9cm91bmQoNy8zKSxtYXhkZXB0aD00LGNwPTAuMDI2ICkNCm1vZGVsX2NyZWRpdDE9cnBhcnQoZHBtfi4sZGF0YSA9IHRyX2NyZWRpdCxtZXRob2QgPSAiY2xhc3MiLGNvbnRyb2wgPSBjb250cm9sKQ0KcnBhcnQucGxvdChtb2RlbF9jcmVkaXQxKQ0KYGBgDQpUaGlzIGlzIHRoZSBuZXcgZGVjaXNpb24gdHJlZSB3aXRoIHJlZHVjZWQgY29tcGxleGl0eSBhcyB3ZSB1c2VkIHRoZSBvcHRpbXVtIHZhbHVlIG9mIGNwLg0KYGBge3J9DQpwcmVfY3JlZGl0PXByZWRpY3QobW9kZWxfY3JlZGl0MSx0c19jcmVkaXQsdHlwZSA9ICJjbGFzcyIpDQphY2NfdGFibGU9dGFibGUoYWM9dHNfY3JlZGl0JGRwbSxwcmVfY3JlZGl0KQ0KYWNjX3RhYmxlDQpgYGANCkhlbmNlIGZyb20gdGhlIG5ldyB0YWJsZSB3ZSBjYW4gc2VlIHRoYXQgdGhlIGVycm9yIGluIHByZWRpY3Rpb24gaXMgYWxzbyByZWR1Y2VkLg0KYGBge3J9DQphY2N1cmFjeV9wcmVkPXN1bShkaWFnKGFjY190YWJsZSkpL3N1bShhY2NfdGFibGUpDQpwcmludChwYXN0ZSgiQWNjdXJhY3kgb2YgcHJlZGljdGlvbiBpcyIsYWNjdXJhY3lfcHJlZCkpDQpgYGANCkFsdGhvdWdoLCBzZWxlY3RpbmcgdGhlIG9wdGltdW0gdmFsdWUgZm9yIGNwIGlzIHZlcnkgc2lnbmlmaWNhbnQgbWV0aG9kIGluIGNhc2Ugb2YgaGlnaGVyIGNvbXBsZXhpdHkgYnV0IGFzIGluIG91ciBjYXNlIHRoZSBjb21wbGV4aXR5IHdhcyBub3QgIGFzIG11Y2ggIGhlbmNlIG91ciBhY2N1cmFjeSBoYXMgaW1wcm92ZWQgb25seSBieSBmZXcgZGVjaW1hbCBudW1iZXIgZnJvbSA4MiB0byA4Mi4xOCUuDQogDQoNCg0KDQo=