Hòa cùng xu thế của nền kinh tế thế giới, chúng ta đang thực hiện chương trình cải cách toàn diện ở Việt Nam để chuyển đổi sang nền kinh tế thị trường. Với những nỗ lực đổi mới này, lĩnh vực ngân hàng đã được cải cách và hoàn thiện với mục tiêu ngày càng củng cố vai trò là lực đẩy của nền kinh tế thế giới.Trọng tâm là hoạt động cho vay, đây là một trong hai hoạt động cốt lõi của ngân hàng và cũng là lĩnh vực mang lại nhiều lợi nhuận nhất trong sản xuất kinh doanh của ngân hàng. Thông qua hoạt động ngân hàng mà mọi nguồn vốn được tích tụ, tập trung và phân phối lại cho các đối tượng có nhu cầu vốn từ đó thúc đẩy kinh tế ngày một phát triển. Các hoạt động của ngân hàng thương mại (NHTM) không ngừng được mở rộng và phát triển cả về chất và lượng. Trong các hoạt động đó có thể nói hoạt động cho vay là hoạt động truyền thống và quan trọng bậc nhất của các NHTM. Thế nhưng với hiện trạng ngày nay, hầu hết các ngân hàng đều thắt chặt tín dụng, còn khách hàng thì vô cùng khó khăn trong việc vay vốn hoặc vay tiêu dùng. Bởi lẽ các ngân hàng, các tổ chức tín dụng vẫn rất quan ngại vì mặt bằng rủi ro tín dụng tổng thể vẫn tiếp tục tăng nhẹ ở hầu hết các lĩnh vực. Vì thế, việc phê duyệt hồ sơ tín dụng sẽ càng khắt khe, chặt chẽ. Hồ sơ tín dụng sẽ bao gồm các giấy tờ cần thiết như: hồ sơ pháp lý, hồ sơ tài sản, giấy tờ chứng tài chính cá nhân,… Những hồ sơ này là cơ sở để khách hàng “làm tin” với đơn vị ngân hàng, giúp ngân hàng được bảo đảm hơn về các rủi ro thanh toán. Mặc dù hiện nay có nhiều tổ chức tín dụng và các định chế tài chính trung gian tập trung đông đảo nhưng khách hàng vẫn gặp rất nhiều hạn chế, khó khăn khi tiếp cận các gói tín dụng của ngân hàng. Vì vậy, nghiên cứu về “Các nhân tố tác động đến quyết định phê duyệt tín dụng của ngân hàng” là vô cùng cần thiết ở giai đoạn hiện nay.
Phân tích các yếu tố tác động đến quyết định hồ sơ tín dụng được duyệt, từ đớ xác định rõ các nhân tố ảnh hưởng đến quyết định phê duyệt tín dụng của các ngân hàng, giúp khách hàng khi có nhu cầu thì có thể dễ dàng tiếp cận với các gói tín dụng.
Phân tích các yếu tố tác động đến quyết định phê duyệt tín dụng tại ngân hàng TMCP Việt Nam.
Mô hình hồi quy tuyến tính tổng quát (GLM) là một mô hình thống kê được sử dụng để mô tả mối quan hệ giữa một biến phụ thuộc và một hoặc nhiều biến độc lập. GLM là một mô hình phân phối xác suất cho biến phụ thuộc, trong đó tham số phân phối phụ thuộc vào biến độc lập.
GLM mô tả mối quan hệ giữa một hàm kỳ vọng có điều kiện với các biến giải thích thông qua một phương trình dự đoán có dạng tuyến tính.
Một mô hình tuyến tính tổng quát có ba thành phần: (1) Thành phần ngẫu nhiên (Random component): Xác định biến đáp ứng và đưa ra giả định về phân phối xác suất cho nó; (2) Thành phần hệ thống (Systematic component): gồm các biến giải thích hay còn gọi là các biến dự báo của mô hình; (3) Hàm liên kết (Link): mô tả mối quan hệ giữa các biến giải thích và kỳ vọng (trung bình) có điều kiện của biến phụ thuộc đối với các thành phần.
GLM phổ biến vì nó có thể xử lý nhiều loại dữ liệu với các kiểu biến phản ứng khác nhua như nhị thức, Poisson hay đa thức.
Để mô hình hóa ảnh hưởng của X là sử dụng dạng hồi quy tuyến tính cổ điển, theo đó giá trị kỳ vọng có điều kiện của Y là một hàm tuyến tính của X.
\(\pi(x) = \beta_0 + \beta_1.x\)
Đây là GLM với thành phần ngẫu nhiên nhị thức và hàm liên kết đồng nhất. Mô hình này được gọi là mô hình xác suất tuyến tính hay LPM (Linear Probability Model). \(\beta_1\) biểu thị cho sự thay đổi xác suất cho mỗi đơn vị thay đổi của x.
\(log(\frac{\pi(x)}{1 - \pi(x)}) = \beta_0 + \beta_1.x_1 + \beta_2.x_2 + ... +\beta_m.x_m\)
Trong đó \(\beta_0, \beta_1,..., \beta_m\) là hệ số hồi quy.
Mô hình Probit được sử dung để ước lượng mô hình có biến phụ thuộc dạng nhị phân. Mô hình Probit là một GLM với thành phần ngẫu nhiên nhị phân và liên kết Probit. Hàm hôi quy Probit có dạng:
\(\pi(x) = \phi(\alpha + \beta x)\)
Trong đó, \(\phi(x) = \frac{1}{\sqrt{2\pi}}\int_{-\infty}^{x}e^{-\frac{1}{2}t^2}dt\) là hàm phân phối chuẩn chính tắc.
Với \(Probit(\pi(x)) = \phi^{-1}(\pi(x))\), ta có mô hình Probit:
\(Probit(\pi(x)) = \alpha + \beta x\) ### Mô hình Cloglog
Mô hình tổng quát của Cloglog:
\(Cloglog(π)=log(−log(1−π))=β_0+β_1X_1+β_2X_2+⋯+β_kX_k)\)
Để bài nghiên cứu được logic và rõ ràng, tôi chia làm 4 chương:
CHƯƠNG 1: GIỚI THIỆU
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
CHƯƠNG 3: PHÂN TÍCH DỮ LIỆU
CHƯƠNG 4: KẾT LUẬN
Thuật ngữ “tín dụng” ra đời vào thế kỷ XV, được thống nhất bằng tiếng Anh gọi là “credit”. Vốn xuất phát từ tiếng Latin là “creditum” mang ý nghĩa là sự tin tưởng, tín nhiệm. Tín dụng hiểu theo ngôn ngữ Việt Nam là sự vay mượn, là mối quan hệ sử dụng vốn giữa người đi vay và người cho vay, dựa trên cam kết hoàn trả. Sản phẩm cho vay có thể là hàng hóa hoặc tiền mặt.
Còn tín dụng ngân hàng là mối quan hệ vay mượn giữa bên cho vay là ngân hàng (hoặc tổ chức tín dụng hợp pháp) và bên đi vay là cá nhân hoặc doanh nghiệp có nhu cầu vay tiền. Khi đó, bên đi vay sẽ cung cấp một tài sản có giá trị thế chấp cho bên vay trong một thời hạn được thỏa thuận. Sau thời gian vay mượn bên vay có nghĩa vụ trả các khoản nợ gốc và lãi theo cam kết ban đầu.
Vay thế chấp: Là hình thức vay vốn đặc trưng và sơ khai nhất của ngân hàng. Với hình thức vay thế chấp ngân hàng, người vay cần có tài sản đảm bảo để thế chấp cho ngân hàng. Hạn mức giải ngân khá cao theo giá trị của tài sản thế chấp. Với một vài ngân hàng có thể cấp đến 80% giá trị của tài sản, thời hạn kéo dài theo nhu cầu của người vay, lên đến tối đa 25 năm theo quy định của từng ngân hàng. Lưu ý rằng, hình thức vay vốn này vẫn cần có minh chứng thu nhập để đảm bảo khả năng trả nợ.
Vay tín chấp: Là hình thức vay vốn mà người đi vay không cần tài sản đảm bảo để cầm cố cho ngân hàng. Sản phẩm này phù hợp cho các nhu cầu sử dụng vốn ít, như mua sắm hoặc vui chơi giải trí. Người vay cần chứng minh tài chính để đảm bảo khả năng trả nợ, dưới nhiều hình thức khác nhau được ngân hàng chấp thuận. Thời gian thẩm định và giải ngân nhanh chóng. Tuy nhiên, hình thức này có lãi suất khá cao và thời gian vay tối đa là 60 tháng.
Vay thấu chi: Đây là hình thức vay ít phổ biến hơn so với hai hình thức vay thế chấp và tín chấp. Hiểu đơn giản rằng, bằng thỏa thuận văn bản sẵn có, ngân hàng sẽ cho phép khách hàng chi tiêu vượt quá số tiền hiện có trong tài khoản được mở tại ngân hàng đó. Đây là hình thức vay linh hoạt khi khách hàng cần một số tiền không quá lớn trong trường hợp cấp bách.
Hồ sơ tín dụng là hồ sơ vay vốn và trả nợ trả lãi vay của khách hàng khi có thực hiện giao dịch vay tín dụng tại ngân hàng hay các đơn vị cho thuê tài chính. Hồ sơ này bao gồm rất nhiều loại giấy tờ khác nhau với mục đích tạo nên sự minh bạch, rõ ràng, tín nhiệm cao và có tính pháp lý.
Hồ sơ tín dụng sẽ bao gồm các giấy tờ cần thiết như: hồ sơ pháp lý, hồ sơ tài sản, giấy tờ chứng tài chính cá nhân,… mà ai cũng cần phải chuẩn bị đầy đủ theo trường hợp vay vốn của mình tại ngân hàng. Những hồ sơ này là cơ sở để khách hàng “làm tin” với đơn vị ngân hàng, giúp ngân hàng được bảo đảm hơn về các rủi ro thanh toán.
CMND/ CCCD/Hộ chiếu của người vay, người hôn phối (còn thời hạn) bản chứng thực và/hoặc bản sao;
Giấy tờ xác nhận tình trạng hôn nhân (Giấy xác nhận độc thân/Đăng ký kết hôn) – Bản chứng thực;
Thị thực/giấy phép lao động/thẻ tạm trú/thẻ thường trú/giấy tờ được phép cư trú tại Việt Nam còn thời hạn;
Giấy tờ chứng minh mối quan hệ của khách hàng với bên thứ 3 (đồng trách nhiệm/đồng trả nợ/chủ TSBĐ); Giấy khai sinh/Giấy chứng nhận con nuôi/Sổ hộ khẩu cũ/xác nhận của chính quyền địa phương; Hồ sơ là bản gốc/chứng thực/ bảo sao theo quy định của từng ngân hàng.
Hợp đồng đầu vào và giấy tờ của TS cần mua tùy theo từng loại mục đích vay vốn mà cần các hồ sơ khác nhau, một số mục đích điển hình như sau:
Nếu mua nhà/đất: Hợp đồng mua bán nhà/đất & Giấy chứng nhận nhà/đất cần mua/Giấy đặt cọc/Văn bản chuyển nhượng BĐS; Hợp đồng mua bán căn hộ/Văn bản chuyển nhượng hợp đồng mua bán căn hộ có xác nhận của chủ đầu tư.
Nếu xây sửa nhà: Giấy phép xây dựng, sửa chữa nhà (nếu tại khu vực phải có giấy phép); Bảng dự toán chi phí; Hợp đồng thi công xây dựng/đơn đặt hàng theo phương án vay vốn.
Nếu mua xe ô tô: Hợp đồng mua bán xe/giấy hẹn lấy đăng ký xe.
Nếu vay tiêu dùng: Hợp đồng/hóa đơn/bảng kê hàng hóa mua vào/phiếu giao hàng…
Nếu vay kinh doanh: Hợp đồng mua bán/Giấy biên nhận mua bán/Hóa đơn VAT/hóa đơn bán hàng/hóa đơn bán lẻ/Bảng kê chi tiết hàng hóa mua bán hoặc các chứng từ tương đương.
Hợp đồng lao động (Nếu là Cơ quan Nhà nước sẽ không có HĐLĐ mà thay vào đó là Quyết định tiếp nhận) – Sao y công ty;
Giấy xác nhận hệ số lương/Quyết định bổ nhiệm (Nếu có) – Sao y công ty.
Sao kê lương (Hoặc sao kê tài khoản nếu trả lương qua ngân hàng) 3 tháng gần nhất – Sao y công ty (hoặc Dấu đỏ ngân hàng).
Hợp đồng cho thuê xe/nhà/đất; kèm giấy tờ sở hữu tài sản cho thuê (Nếu có) – Bản công chứng/Bản sao/Bản chứng thực.
Hợp đồng lao động; xác nhận lương; sao kê lương 03 tháng của người đồng trách nhiệm trả nợ (nếu có) – (Như của Khách hàng vay chính).
Giấy tờ sở hữu tài sản: Tùy theo các loại tài sản khác nhau mà có giấy tờ sở hữu khác nhau:
Bất động sản: Giấy chứng nhận QSDĐ/ Giấy chứng nhận QSH nhà ở;
Ô tô: Đăng ký xe, Đăng kiểm…
Đối với TSBĐ cần đóng bảo hiểm: Sẽ có thêm Hợp đồng bảo hiểm; Chuyển quyền thụ hưởng bảo hiểm cho ngân hàng; Hóa đơn VAT và/hoặc phiếu thu của công ty bảo hiểm (bắt buộc).
Biến định tính (qualitative variable) hay còn gọi là biến phân loại (categoricalvariable) là biến mà những giá trị nó có thể nhận không phải là số. Biến định tínhthường được “đo lường” bằng thang đo Định danh hoặc thang đo Thứ bậc. Dữ liệu định tính là dữ liệu có được khi quan sát biến định tính.
Chẳng hạn, phản ứng của người dân trước một chính sách mới ban hành có thể có 3 thái độ: đồng tình, không có ý kiến, phản đối; sự nhận định của ngân hàng về khả năng trả nợ của một khách hàng là: “có khả năng” hoặc “không có khả năng”,….Các mức độ phản ứng khác nhau về một vấn đề trong các lĩnh vực khoa học xã hội.
Biến định tính thậm chí còn được quan tâm trong những lĩnh vực có tính định lượng cao như khoa học kỹ thuật và kiểm soát chất lượng công nghiệp, khi các hạng mục được phân loại “đạt” hoặc “không đạt” với các tiêu chuẩn nhất định.
Tóm lại, biến định tính Là những thông tin được ghi nhận lại, nhưng những thông tin này không là những con số. Ví dụ: Màu mắt: Xanh, Nâu; Loại xe: Số sàn, số Tự động; Nghề nghiệp: Công nhân, Giáo viên…
Biến ngẫu nhiên (X) có phân phối Poisson là biến ngẫu nhiên dùng để mô tả cho số lần xảy ra của một sự việc/biến cố mà chúng ta quan tâm xảy ra trong một khoảng thời gian hoặc không gian cho trước.
Xác suất để biến ngẫu nhiên này nhận một giá trị cụ thể được tính bằng công thức:
\(P(X=k)=\frac{e^-\lambda .\lambda^k}{k!}\)
Trong đó: λ: là trung bình số lần xảy ra của sự kiện trong mỗi khoảng thời gian.
k: là số lần xảy ra của sự kiện trong khoảng thời gian.
Biến ngẫu nhiên (X) có phân phối nhị thức là biến ngẫu nhiên dùng để mô tả cho số lần thành công của một dãy những sự việc (biến cố) có những tính chất sau:
+ Dãy gồm n sự việc độc lập nhau.
+ Xác suất Thành công là bằng nhau và bằng p
cho từng sự việc.
Khi đó xác suất để (X) nhận một giá trị cụ thể là:
\(P(X=k)=C_n^k.p^k (1-p)^{n-k}\)
Trong đó: n: là số lần thử cố định.
p: là xác suất thành công trong mỗi lần thử.
k: là số lần thành công.
Bảng tần số - Bảng tần suất còn được gọi là bảng ngẫu nhiên. Khi lập bảng ngẫu nhiên cho 2 biến thì bảng đó được gọi là bảng ngẫu nhiên 2 chiều, nếu lập cho 3 biến thì gọi là bảng ngẫu nhiên 3 chiều và cứ thế tăng lên.
Đối với bảng tần số chúng ta quy ước biến phụ thuộc (dependent/outcome/response variable) được xắp xếp theo cột, biến độc lập (independent/explanatory/predictor variable) được xắp xếp theo hàng.
Rủi ro tương đối là một chỉ số được sử dụng để đánh giá mối quan hệ giữa một yếu tố nguy cơ và một kết quả. Được tính bằng cách chia tỷ lệ mắc bệnh ở những người có yếu tố nguy cơ cho tỷ lệ mắc bệnh ở những người không có yếu tố nguy cơ. RR được biểu thị dưới dạng số. Nếu RR lớn hơn 1, điều đó có nghĩa là yếu tố nguy cơ làm tăng nguy cơ mắc bệnh. Nếu rủi ro bằng 1, điều đó có nghĩa là yếu tố nguy cơ không có tác động đến nguy cơ mắc bệnh. Nếu RR nhỏ hơn 1, điều đó có nghĩa là yếu tố nguy cơ làm giảm nguy cơ mắc bệnh. rủi ro là một chỉ số quan trọng để đánh giá mối quan hệ giữa một yếu tố nguy cơ và một kết quả. Tuy nhiên, cần lưu ý rằng rủi ro không phải lúc nào cũng là chỉ số duy nhất cần xem xét. Trong một số trường hợp, các chỉ số khác, chẳng hạn như nguy cơ tuyệt đối (AR), có thể quan trọng hơn.
Ký hiệu \(π_i\) là tỷ lệ “thành công” của biến phụ thuộc (response variable) tương ứng với từng biểu hiện của biến độc lập.
Từ bảng tần xuất, chúng ta tính \(\frac{\pi_1}{\pi_2}\), phân số này gọi là Rủi ro tương đối (Relative risk) giữa 2 biểu hiện khác nhau của biến phụ thuộc.
Tỷ lệ chênh (Odd) là một chỉ số được sử dụng để đo cường độ của mối quan hệ giữa hai biến phân loại. Odd được tính bằng cách chia tỷ lệ chênh dương cho tỷ lệ chênh âm. Odd thường được sử dụng trong các nghiên cứu quan sát, trong đó các nhà nghiên cứu quan sát các biến số mà không cố gắng kiểm soát chúng. Odd không phải là một ước lượng chính xác của nguy cơ tuyệt đối, nhưng nó có thể được sử dụng để đánh giá nguy cơ tương đối của các kết quả khác nhau.Odd được biểu thị dưới dạng số. Nếu Odd lớn hơn 1, điều đó có nghĩa là biến phân loại đầu tiên có liên quan đến kết quả. Nếu OR bằng 1, điều đó có nghĩa là biến phân loại đầu tiên không liên quan đến kết quả. Nếu OR nhỏ hơn 1, điều đó có nghĩa là biến phân loại đầu tiên không liên quan đến kết quả.
Nếu gọi xác suất “thành công” của biểu hiện thứ i của biến độc lập là \(π_i\) thì chúng ta kí hiệu Tỷ lệ cược (odd) của biểu hiện này là \(odd_i\) và được định nghĩa như sau:
\(odd_i=\frac{\pi_i}{1-\pi_i}\)
Nghĩa là chúng ta tính tỷ lệ thành công theo từng hàng trong bảng ngẫu nhiên.
Tỷ lệ chênh của biểu hiện thứ i và biểu hiện thứ j được kí hiệu là \(θ_ij\) và được định nghĩa:
\(θ = \frac{odd_i}{odd_j} = \frac{π_i(1-π_j)}{π_j(1-π_i)}\)
Để đánh giá các mô hình hồi cổ điển chúng ta thường dựa vào hệ số xác định mô hình (R^2), nhưng đối với mô các mô hình hồi quy tuyến tính tổng quát chúng ta sử dụng các tiêu chí sau:
AIC được đề xuất bởi Akaike Hirotugu, một nhà thống kê học người Nhật. AIC là một tiêu chí được sử dụng một cách phổ biến để đánh giá một mô hình hồi quy được ước lượng bởi phương pháp Maximum Likekihood (ML). Một cách chung chung giá trị của AIC càng nhỏ thì mô hình càng tốt. AIC được tính bằng công thức sau:
\(AIC = -2ln(L) + 2k\)
Với \(L\) là giá trị cực đại của hàm hợp lý (likelihood function) và \(k\) là số tham số của mô hình.
Khi thực hiện việc ước lượng mô hình hồi quy bằng lệnh glm thì chỉ số AIC đã được tính toán và thể hiện trên bảng kết quả ( bằng lệnh summary)
Deviance cũng là một tiêu chí rất phổ biến được sử dụng để đánh giá một mô hình hồi quy được ước lượng bởi phương pháp Hợp lý cực đại (ML). Một cách tổng quá, cũng giống như chỉ tiêu AIC, giá trị của Deviance càng nhỏ thì mô hình càng tốt.
Là chỉ tiêu dùng để đánh giá mô hình hồi quy logistic, Brier Score được tính như sau:
\(B=\frac{1}{n}\sum_{i=1}^{n}(p_i-o_i)\)
Trong đó: \(p_i\), \(o_i\) lần lượt là giá trị xác suất quan sát được, và giá trị xác suất tính ra từ mô hình.
Giá trị của Brier Score càng nhỏ nghĩa là chênh lệch giữa xác suất thực tế và xác suất tính từ mô hình càng nhỏ, nghĩa là mô hình càng tốt.
Ma trận nhầm lẫn là yếu tố giúp so sánh giá trị thực tế và giá trị dự báo.
Trong ma trận nhầm lẫn người ta xét các chỉ số: Độ chính xác toàn thể, độ nhạy, độ đặc hiệu,…
Trong ma trận nhầm lẫn, các chỉ số quan trọng được chú ý là độ nhạy và độ đặc hiệu. Các chỉ số này càng lớn càng tốt.
Độ nhạy (sensitivity) của một thí nghiệm: Là tỷ lệ (%) của số ca bị bệnh thực sự khi xét nghiệm và cho kết quả dương tính với tổng số ca bị bệnh. Công thức để tính độ nhạy:
Độ nhạy = số dương tính thật/(số đương tính thật + số âm tính giả)
Độ đặc hiệu (specificity) của một thí nghiệm: Là tỷ lệ (%) của số ca không bị bệnh và kết quả xét nghiệm không bị bệnh với tổng số người không bị bệnh. Công thức tính độ đặc hiệu:
Độ đặc hiệu = Số trường hợp âm tính thật/ (số trường hợp âm tính thật + số trường hợp dương tính giả)
library("tidyverse")
## Warning: package 'tidyverse' was built under R version 4.3.1
## Warning: package 'ggplot2' was built under R version 4.3.1
## Warning: package 'tidyr' was built under R version 4.3.1
## Warning: package 'readr' was built under R version 4.3.1
## Warning: package 'purrr' was built under R version 4.3.1
## Warning: package 'dplyr' was built under R version 4.3.1
## Warning: package 'forcats' was built under R version 4.3.1
## Warning: package 'lubridate' was built under R version 4.3.1
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.2 ✔ readr 2.1.4
## ✔ forcats 1.0.0 ✔ stringr 1.5.0
## ✔ ggplot2 3.4.2 ✔ tibble 3.2.1
## ✔ lubridate 1.9.2 ✔ tidyr 1.3.0
## ✔ purrr 1.0.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library("DT")
## Warning: package 'DT' was built under R version 4.3.1
library("ggplot2")
library("AER")
## Warning: package 'AER' was built under R version 4.3.1
## Loading required package: car
## Warning: package 'car' was built under R version 4.3.1
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.3.1
##
## Attaching package: 'car'
##
## The following object is masked from 'package:dplyr':
##
## recode
##
## The following object is masked from 'package:purrr':
##
## some
##
## Loading required package: lmtest
## Warning: package 'lmtest' was built under R version 4.3.1
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.3.1
##
## Attaching package: 'zoo'
##
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
##
## Loading required package: sandwich
## Warning: package 'sandwich' was built under R version 4.3.1
## Loading required package: survival
library("scales")
##
## Attaching package: 'scales'
##
## The following object is masked from 'package:purrr':
##
## discard
##
## The following object is masked from 'package:readr':
##
## col_factor
library("utf8")
library("epitools")
##
## Attaching package: 'epitools'
##
## The following object is masked from 'package:survival':
##
## ratetable
Bộ dữ liệu “Phê duyệt hồ sơ vay” bao gồm 4269 quan sát với 10 cột,là tập hợp các hồ sơ tài chính và thông tin liên quan được sử dụng để xác định tính đủ điều kiện của các cá nhân hoặc tổ chức để nhận khoản vay từ một tổ chức cho vay. Nó bao gồm nhiều yếu tố khác nhau như điểm tín dụng, thu nhập, tình trạng việc làm, thời hạn cho vay, số tiền cho vay, giá trị tài sản và tình trạng cho vay. Bộ dữ liệu này thường được sử dụng trong học máy và phân tích dữ liệu để phát triển các mô hình và thuật toán dự đoán khả năng phê duyệt khoản vay dựa trên các tính năng nhất định.
loan_id: Mã định danh
education: Học vấn
self_employed: Tình trạng việc làm
income_annum: Thu nhập hằng năm
loan_amount: Số tiền vay
loan_term: Thời hạn cho vay (Năm)
cibil_score: Điểm tín dụng
residential_assets_value: Giá trị tài sản nhà ở
commercial_assets_value: Giá trị tài sản thương mại
loan_status: Tình trạng cho vay
Đọc dữ liệu
setwd("D:/HN")
loan <- read.csv("loan_dataset.csv", header=TRUE)
Cấu trúc dữ liệu
str(loan)
## 'data.frame': 4269 obs. of 11 variables:
## $ loan_id : int 1 2 3 4 5 6 7 8 9 10 ...
## $ education : chr " Graduate" " Not Graduate" " Graduate" " Graduate" ...
## $ self_employed : chr " No" " Yes" " No" " No" ...
## $ income_annum : int 9600000 4100000 9100000 8200000 9800000 4800000 8700000 5700000 800000 1100000 ...
## $ loan_amount : int 29900000 12200000 29700000 30700000 24200000 13500000 33000000 15000000 2200000 4300000 ...
## $ loan_term : int 12 8 20 8 20 10 4 20 20 10 ...
## $ cibil_score : int 778 417 506 467 382 319 678 382 782 388 ...
## $ residential_assets_value: int 2400000 2700000 7100000 18200000 12400000 6800000 22500000 13200000 1300000 3200000 ...
## $ commercial_assets_value : int 17600000 2200000 4500000 3300000 8200000 8300000 14800000 5700000 800000 1400000 ...
## $ luxury_assets_value : int 22700000 8800000 33300000 23300000 29400000 13700000 29200000 11800000 2800000 3300000 ...
## $ loan_status : chr " Approved" " Rejected" " Rejected" " Rejected" ...
Bảng dữ liệu
datatable(loan)
Dữ liệu định tính bao gồm các biến: education, self_employed, loan_status Dữ liệu định lượng bao gồm các biến: income_annum, loan_amount, loan_term, cibil_score, residential_assets_value, commercial_assets_value
Biến loan_status (tình trạng cho vay) được chọn là biến phụ thuộc bởi vì biến này chịu tác động rất lớn từ các biến còn lại. Bởi đây là biến thể hiện được kết quả liệu hồ sơ vay đó có được phê duyệt hay không, biến loan_status có 2 biểu hiện là Approved và Rejected, nghĩa là chấp nhận và loại bỏ. Tôi chọn đây là biến phụ thuộc vì tôi muốn xác định các yếu tố như tình trạng việc làm, học vấn, giá trị tài sản nhà ở,… sẽ có tác động như thế nào đến tình trạng cho vay của ngân hàng.
Thống kê mô tả dữ liệu
table(loan$loan_status)
##
## Approved Rejected
## 2656 1613
prop.table(table(loan$loan_status))
##
## Approved Rejected
## 0.6221598 0.3778402
loan |> ggplot(aes(x = `loan_status`, y = after_stat(count))) + geom_bar(fill = 'pink') + geom_text(aes(label = scales::percent(after_stat(count/sum(count)))), stat = 'count', color = 'black', vjust = - .5) + theme_classic() + labs(x = 'Tình trạng cho vay', y = 'Số người')
Đối với biến định lượng, biến cibil_score (Điểm tín dụng) được chọn là biến phụ thuộc bởi vì đây là một trong những tiêu chí đầu tiên cần phải xem xét khi làm thủ tục vay ngân hàng và các công ty tài chính. Vì thế tôi cần phân tích mức độ ảnh hưởng của các biến khác đến cibil_score như thế nào.
Thống kê mô tả dữ liệu
table(loan$cibil_score)
##
## 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319
## 11 8 13 6 8 3 9 8 6 6 4 5 13 6 5 8 4 8 9 9
## 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339
## 9 8 5 6 12 3 4 5 6 4 8 7 5 7 2 11 7 6 7 8
## 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359
## 5 4 7 7 6 6 9 6 16 8 11 8 5 9 5 10 6 4 5 8
## 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379
## 11 5 5 6 11 4 9 7 8 8 5 9 7 9 3 6 9 3 5 10
## 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399
## 6 4 13 7 8 6 8 6 5 7 3 6 9 10 8 9 7 7 4 7
## 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419
## 8 5 7 8 5 7 8 8 5 8 4 5 4 5 8 14 3 8 7 5
## 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439
## 11 9 4 4 7 8 5 6 5 9 6 13 4 9 7 3 10 8 5 14
## 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459
## 8 6 8 5 4 5 6 12 9 4 3 5 4 6 6 12 7 10 6 11
## 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479
## 5 11 6 7 9 9 4 7 7 9 8 9 4 7 4 3 11 9 9 8
## 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499
## 8 7 8 9 2 4 4 6 7 8 8 4 10 7 5 9 9 8 6 5
## 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519
## 6 5 7 3 12 8 9 4 9 14 9 4 11 9 3 10 8 7 5 6
## 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539
## 6 5 4 13 8 6 4 8 6 5 11 10 6 6 8 8 3 4 15 9
## 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559
## 12 5 5 15 11 8 10 10 7 8 4 9 9 7 11 12 5 6 8 9
## 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579
## 9 9 4 5 7 7 5 6 4 5 8 11 6 3 4 4 8 4 6 3
## 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599
## 7 5 7 13 8 4 8 7 11 7 9 7 11 6 7 6 7 8 5 7
## 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619
## 11 5 4 6 5 7 8 12 7 5 9 7 11 11 4 10 4 5 11 6
## 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639
## 5 9 8 4 5 4 6 6 6 6 6 6 7 6 5 4 9 3 9 5
## 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659
## 6 10 5 4 6 8 3 8 5 13 9 7 4 7 4 13 10 9 8 3
## 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679
## 3 4 10 12 7 9 11 8 8 7 9 7 10 10 8 3 3 8 11 9
## 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699
## 5 3 9 8 6 6 7 5 5 8 4 8 8 8 8 8 11 9 6 8
## 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719
## 5 10 7 6 11 7 4 9 10 11 10 10 10 8 3 10 7 9 4 9
## 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739
## 5 8 6 6 5 7 10 12 11 9 10 5 5 8 4 9 6 7 3 5
## 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759
## 7 11 10 6 6 8 4 8 8 5 3 5 6 6 10 7 7 7 8 8
## 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779
## 9 9 4 10 4 7 7 7 9 5 6 7 10 2 6 8 8 7 14 11
## 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799
## 4 6 6 11 12 9 8 9 6 3 9 5 6 3 8 6 10 8 6 9
## 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819
## 4 8 13 8 6 3 11 3 10 7 6 8 6 5 4 6 6 8 5 14
## 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839
## 10 8 4 5 5 3 9 8 8 9 7 6 6 8 9 9 4 13 6 7
## 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859
## 7 8 6 7 6 8 5 5 11 7 4 7 8 5 7 6 7 10 5 7
## 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879
## 7 9 4 3 1 13 5 12 5 4 6 6 5 6 9 5 5 7 3 7
## 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899
## 5 9 7 3 9 12 5 9 10 8 9 8 8 2 5 11 11 4 5 6
## 900
## 6
summary(loan$cibil_score)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 300.0 453.0 600.0 599.9 748.0 900.0
score <- seq(1,4269, length = length(loan$cibil_score))
hscore <- mutate(loan,score)
hscore |> ggplot(aes( x = score, y = cibil_score )) + geom_col( fill = 'lightblue') + xlab('Điểm tín dụng') + ylab('Số khách hàng')
table(loan$education)
##
## Graduate Not Graduate
## 2144 2125
Trong tổng số 4269 quan sát, có 2144 khách hàng đã tốt nghiệp, chiếm tỉ trọng 50.22% cao hơn số khách hàng chưa tốt nghiệp (49.78%). Nhưng có thể thấy với sự chênh lệch là không quá lớn, có thể nói là xấp xỉ với nhau trong tình trạng học vấn của khách hàng.
loan |> ggplot(aes(x = `education`, y = after_stat(count))) + geom_bar(fill = 'pink') + geom_text(aes(label = scales::percent(after_stat(count/sum(count)))), stat = 'count', color = 'black', vjust = - .5) + theme_classic() + labs(x = 'Học vấn', y = 'Số người')
table(loan$self_employed)
##
## No Yes
## 2119 2150
Trong tổng số 4269 quan sát, có 2150 khách hàng đã tự làm chủ, chiếm tỉ trọng 50.36% cao hơn so với số khách hàng chưa tự làm chủ (49.64%). Nhưng có thể thấy với sự chênh lệch là không quá lớn trong tình trạng việc làm của khách hàng.
loan |> ggplot(aes(x = `self_employed`, y = after_stat(count))) + geom_bar(fill = 'pink') + geom_text(aes(label = scales::percent(after_stat(count/sum(count)))), stat = 'count', color = 'black', vjust = - .5) + theme_classic() + labs(x = 'Tự làm chủ', y = 'Số khách hàng')
an <- data.frame(loan$income_annum)
summary(an)
## loan.income_annum
## Min. : 200000
## 1st Qu.:2700000
## Median :5100000
## Mean :5059124
## 3rd Qu.:7500000
## Max. :9900000
Biến income_annum: là biến định lượng cho biết thu nhập bình quân hằng năm khách hàng cần vay. Thông qua kết quả trên ta thấy thu nhập nhỏ nhất là 200.000 nghìn đồng, số người có thu nhập cao nhất là 9.900.000 nghìn đồng và thu nhập hằng năm trung bình là 5.059.124 nghìn đồng.
# Đồ thị
hist(loan$income_annum)
am <- data.frame(loan$loan_amount)
summary(am)
## loan.loan_amount
## Min. : 300000
## 1st Qu.: 7700000
## Median :14500000
## Mean :15133450
## 3rd Qu.:21500000
## Max. :39500000
Biến loan_amount: là biến định lượng cho số tiền khách hàng cần vay. Thông qua kết quả trên ta thấy khách hàng cần vay số tiền nhỏ nhất là 300.000 nghìn đồng, khách hàng cần vay số tiền cao nhất là 39.500.000 nghìn đồng và số tiền khách hàng cần vay trung bình là 15.133.450 nghìn đồng.
# Đồ thị
hist(loan$loan_amount)
#### Biến loan_term (thời hạn vay)
te <- data.frame(loan$loan_term)
summary(te)
## loan.loan_term
## Min. : 2.0
## 1st Qu.: 6.0
## Median :10.0
## Mean :10.9
## 3rd Qu.:16.0
## Max. :20.0
Biến loan_term: là biến định lượng cho biết thời hạn vay. Thông qua kết quả trên ta thấy thời hạn vay ngắn nhất là 2 năm, thời hạn vay dài nhất là 20 năm.
# Đồ thị
par(mar = c(1, 1, 1, 1))
hist(loan$loan_term, xlab="Thời hạn vay", ylab="Số khách hàng")
re <- data.frame(loan$residential_assets_value)
summary(re)
## loan.residential_assets_value
## Min. : -100000
## 1st Qu.: 2200000
## Median : 5600000
## Mean : 7472617
## 3rd Qu.:11300000
## Max. :29100000
Biến residential_assets_value: là biến định lượng cho biết giá trị tài sản nhà ở, một trong những tài sản đảm bảo của khách hàng. Thông qua kết quả trên ta thấy giá trị tài sản nhà ở nhỏ nhất là -100.000 nghìn đồng, nghĩa là căn nhà đó hiện đang là tài sản đảm bảo cho một số dư nợ 100.000 nghìn đồng. Giá trị tài sản nhà ở lớn nhất là 29.100.000 nghìn đồng và trung bình là 5.560.000 nghìn đồng.
# Đồ thị
hist(loan$residential_assets_value)
co <- data.frame(loan$commercial_assets_value)
summary(co)
## loan.commercial_assets_value
## Min. : 0
## 1st Qu.: 1300000
## Median : 3700000
## Mean : 4973155
## 3rd Qu.: 7600000
## Max. :19400000
Biến commercial_assets_value: là biến định lượng cho biết giá trị tài sản thương mại của khách hàng, một trong những tài sản đảm bảo. Thông qua kết quả trên ta thấy giá trị tài sản thương mại nhỏ nhất là 0, giá trị tài sản nhà ở lớn nhất là 19.400.000 nghìn đồng và trung bình là 4.973.155 nghìn đồng.
# Đồ thị
hist(loan$commercial_assets_value)
education <- loan$education
loan_status <- loan$loan_status
# Bảng tần số
a <- table(education, loan_status);a
## loan_status
## education Approved Rejected
## Graduate 1339 805
## Not Graduate 1317 808
# Bảng tần suất
aa <- prop.table(a);aa
## loan_status
## education Approved Rejected
## Graduate 0.3136566 0.1885688
## Not Graduate 0.3085032 0.1892715
addmargins(a)
## loan_status
## education Approved Rejected Sum
## Graduate 1339 805 2144
## Not Graduate 1317 808 2125
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = education)) + geom_bar(position = 'dodge')
library(epitools)
epitab(a, method = "riskratio")
## $tab
## loan_status
## education Approved p0 Rejected p1 riskratio lower
## Graduate 1339 0.6245336 805 0.3754664 1.000000 NA
## Not Graduate 1317 0.6197647 808 0.3802353 1.012701 0.9376631
## loan_status
## education upper p.value
## Graduate NA NA
## Not Graduate 1.093744 0.752337
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay cao theo trình độ học vấn là 1.012701 tức là tỉ lệ những khách hàng được chấp nhận vay cao có học vấn là chưa tốt nghiệp cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay đã tốt nghiệp.
epitab(a, method = "oddsratio")
## $tab
## loan_status
## education Approved p0 Rejected p1 oddsratio lower
## Graduate 1339 0.5041416 805 0.4990701 1.000000 NA
## Not Graduate 1317 0.4958584 808 0.5009299 1.020494 0.9017164
## loan_status
## education upper p.value
## Graduate NA NA
## Not Graduate 1.154917 0.752337
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ chênh lệch (odd ratio) của những khách hàng được chấp nhận vay cao theo trình độ học vấn là 1.012701 tức là tỉ lệ những khách hàng được chấp nhận vay cao có học vấn là chưa tốt nghiệp cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay đã tốt nghiệp.
Kiểm định tính độc lập cho 2 biến (loan_status) và (education):
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và education độc lập với nhau
H1: loan_status và education không độc lập với nhau
aaa <- table(loan$education,loan_status); aaa
## loan_status
## Approved Rejected
## Graduate 1339 805
## Not Graduate 1317 808
chisq.test(aaa)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: aaa
## X-squared = 0.083958, df = 1, p-value = 0.772
Kết quả p-value = 0.772 > 5% cho thấy chưa đủ cơ sở để kết luận rằng loan_status và education có liên quan với nhau.
self_employed <- loan$self_employed
# Bảng tần số
b <- table(self_employed, loan_status);b
## loan_status
## self_employed Approved Rejected
## No 1318 801
## Yes 1338 812
# Bảng tần suất
bb <- prop.table(b);bb
## loan_status
## self_employed Approved Rejected
## No 0.3087374 0.1876318
## Yes 0.3134223 0.1902085
addmargins(b)
## loan_status
## self_employed Approved Rejected Sum
## No 1318 801 2119
## Yes 1338 812 2150
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = self_employed)) + geom_bar(position = 'dodge')
library(epitools)
epitab(b, method = "riskratio")
## $tab
## loan_status
## self_employed Approved p0 Rejected p1 riskratio lower
## No 1318 0.6219915 801 0.3780085 1.0000000 NA
## Yes 1338 0.6223256 812 0.3776744 0.9991162 0.925083
## loan_status
## self_employed upper p.value
## No NA NA
## Yes 1.079074 1
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo việc làm là 0.9991162 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng đã làm chủ cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà chưa làm chủ.
epitab(b, method = "oddsratio")
## $tab
## loan_status
## self_employed Approved p0 Rejected p1 oddsratio lower
## No 1318 0.4962349 801 0.4965902 1.0000000 NA
## Yes 1338 0.5037651 812 0.5034098 0.9985799 0.882352
## loan_status
## self_employed upper p.value
## No NA NA
## Yes 1.130118 1
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ chênh lệch (odd ratio) của những khách hàng được chấp nhận vay thưo việc làm là 0.9985799 tức là tỉ lệ những khách hàng được chấp nhận vay cao đã làm chủ cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà chưa làm chủ.
Kiểm định tính độc lập cho 2 biến loan_status và self_employed:
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và self_employed độc lập với nhau
H1: loan_status và self_employed không độc lập với nhau
bbb <- table(loan$self_employed,loan_status); bbb
## loan_status
## Approved Rejected
## No 1318 801
## Yes 1338 812
chisq.test(bbb)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: bbb
## X-squared = 0, df = 1, p-value = 1
Kết quả p-value = 1 > 5% cho thấy chưa đủ cơ sở để kết luận rằng loan_status và self_employed có liên quan với nhau.
Tiến hành tách biến income_annum nhằm mục đích dễ dàng thực hiện thống kê mô tả cũng như dễ dàng trong việc vẽ đồ thị.
thunhap <- cut( loan$income_annum, breaks = c(0,5000000,9900000), labels = c('Thu nhập thấp', 'Thu nhập cao'))
# Bảng tần số
table(thunhap)
## thunhap
## Thu nhập thấp Thu nhập cao
## 2124 2145
Sau khi tiến hành tách biến thu nhập trung bình hằng năm ra thành 2 phần: Thu nhập cao và thu nhập thấp. Ta có thể thấy được rằng số khách hàng ở 2 mức là xấp xỉ nhau, với 2124 khách hàng có mức thu nhập thấp và 2145 khách có thu nhập cao.
# Bảng tần số
c <- table(thunhap, loan_status);c
## loan_status
## thunhap Approved Rejected
## Thu nhập thấp 1331 793
## Thu nhập cao 1325 820
# Bảng tần suất
cc <- prop.table(c);cc
## loan_status
## thunhap Approved Rejected
## Thu nhập thấp 0.3117826 0.1857578
## Thu nhập cao 0.3103771 0.1920825
addmargins(c)
## loan_status
## thunhap Approved Rejected Sum
## Thu nhập thấp 1331 793 2124
## Thu nhập cao 1325 820 2145
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = thunhap)) + geom_bar(position = 'dodge')
library(epitools)
epitab(c, method = "riskratio")
## $tab
## loan_status
## thunhap Approved p0 Rejected p1 riskratio lower
## Thu nhập thấp 1331 0.6266478 793 0.3733522 1.000000 NA
## Thu nhập cao 1325 0.6177156 820 0.3822844 1.023924 0.9480385
## loan_status
## thunhap upper p.value
## Thu nhập thấp NA NA
## Thu nhập cao 1.105884 0.5488346
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo thu nhập trung bình hằng năm là 1.023924 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có thu nhậo cao cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà thu nhập thấp.
epitab(c, method = "oddsratio")
## $tab
## loan_status
## thunhap Approved p0 Rejected p1 oddsratio lower
## Thu nhập thấp 1331 0.5011295 793 0.4916305 1.00000 NA
## Thu nhập cao 1325 0.4988705 820 0.5083695 1.03873 0.9178221
## loan_status
## thunhap upper p.value
## Thu nhập thấp NA NA
## Thu nhập cao 1.175566 0.5488346
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ chênh lệch (odd ratio) của những khách hàng được chấp nhận vay thưo việc làm là 1.03873 tức là tỉ lệ những khách hàng được chấp nhận vay cao có thu nhập caocao cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà có thu nhập thấp hơn.
Kiểm định tính độc lập cho 2 biến loan_status và income_annum:
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và income_annum độc lập với nhau
H1: loan_status và income_annum không độc lập với nhau
ccc <- table(thunhap,loan_status); ccc
## loan_status
## thunhap Approved Rejected
## Thu nhập thấp 1331 793
## Thu nhập cao 1325 820
chisq.test(ccc)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: ccc
## X-squared = 0.32521, df = 1, p-value = 0.5685
Kết quả p-value = 0.5685 > 5% cho thấy chưa đủ cơ sở để kết luận rằng loan_status và income_annum có liên quan với nhau.
Tiến hành tách biến loan_amount nhằm mục đích dễ dàng thực hiện thống kê mô tả cũng như dễ dàng trong việc vẽ đồ thị.
tienvay <- cut(loan$loan_amount, breaks = c(0,15000000,25000000,39500000), labels = c('Từ 0-15 tỷ', 'Từ 15-25 tỷ','Từ 25-39.5 tỷ'))
# Bảng tần số
table(tienvay)
## tienvay
## Từ 0-15 tỷ Từ 15-25 tỷ Từ 25-39.5 tỷ
## 2217 1373 679
Sau khi tiến hành tách biến số tiền khách hàng cần vay ra thành 3 mức: 0 đến 15 tỷ, 15 đến 25 tỷ và 25 đến 39.5 tỷ. Kết quả cho thấy, khách hàng có nhu cầu vay chủ yếu ở mức 0 đến 5 tỷ, và càng ở mức vay cao thì lượng khách hàng càng giảm dần.
# Bảng tần số
d <- table(tienvay, loan_status);d
## loan_status
## tienvay Approved Rejected
## Từ 0-15 tỷ 1372 845
## Từ 15-25 tỷ 830 543
## Từ 25-39.5 tỷ 454 225
# Bảng tần suất
dd <- prop.table(d);dd
## loan_status
## tienvay Approved Rejected
## Từ 0-15 tỷ 0.32138674 0.19793863
## Từ 15-25 tỷ 0.19442492 0.12719606
## Từ 25-39.5 tỷ 0.10634809 0.05270555
addmargins(d)
## loan_status
## tienvay Approved Rejected Sum
## Từ 0-15 tỷ 1372 845 2217
## Từ 15-25 tỷ 830 543 1373
## Từ 25-39.5 tỷ 454 225 679
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = tienvay)) + geom_bar(position = 'dodge')
library(epitools)
epitab(d, method = "riskratio")
## $tab
## loan_status
## tienvay Approved p0 Rejected p1 riskratio lower
## Từ 0-15 tỷ 1372 0.6188543 845 0.3811457 1.0000000 NA
## Từ 15-25 tỷ 830 0.6045157 543 0.3954843 1.0376199 0.9538271
## Từ 25-39.5 tỷ 454 0.6686303 225 0.3313697 0.8694042 0.7716436
## loan_status
## tienvay upper p.value
## Từ 0-15 tỷ NA NA
## Từ 15-25 tỷ 1.1287737 0.39753594
## Từ 25-39.5 tỷ 0.9795502 0.02044265
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo số tiền cần vay là 0.8694042 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có số tiền cần vay cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà số tiền cần vay thấp hơn.
epitab(d, method = "oddsratio")
## $tab
## loan_status
## tienvay Approved p0 Rejected p1 oddsratio lower
## Từ 0-15 tỷ 1372 0.5165663 845 0.5238686 1.0000000 NA
## Từ 15-25 tỷ 830 0.3125000 543 0.3366398 1.0622314 0.9252924
## Từ 25-39.5 tỷ 454 0.1709337 225 0.1394916 0.8046816 0.6712333
## loan_status
## tienvay upper p.value
## Từ 0-15 tỷ NA NA
## Từ 15-25 tỷ 1.2194368 0.39753594
## Từ 25-39.5 tỷ 0.9646608 0.02044265
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ chênh lệch (odd ratio) của những khách hàng được chấp nhận vay theo số tiền cần vay là 0.8046816 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có số tiền cần vay cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà số tiền cần vay thấp hơn.
Kiểm định tính độc lập cho 2 biến loan_status và loan_amount:
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và loan_amount độc lập với nhau
H1: loan_status và loan_amount không độc lập với nhau
ddd <- table(tienvay,loan_status); ddd
## loan_status
## tienvay Approved Rejected
## Từ 0-15 tỷ 1372 845
## Từ 15-25 tỷ 830 543
## Từ 25-39.5 tỷ 454 225
chisq.test(ddd)
##
## Pearson's Chi-squared test
##
## data: ddd
## X-squared = 8.1589, df = 2, p-value = 0.01692
Kết quả p-value = 0.01692 < 5% bác bỏ giả thuyết H0, do đó kết luận giữa loan_status và loan_amount có liên quan tới nhau.
Tiến hành tách biến loan_term nhằm mục đích dễ dàng thực hiện thống kê mô tả cũng như dễ dàng trong việc vẽ đồ thị.
thoihan <- cut(loan$loan_term, breaks = c(0,10,20), labels = c('Ngắn hạn', 'Dài hạn'))
# Bảng tần số
table(thoihan)
## thoihan
## Ngắn hạn Dài hạn
## 2163 2106
Sau khi tiến hành tách biến số thời hạn vay ra làm 2 mức: 0 đến 10 năm: Ngắn hạn 10 đến 20 năm: Dài hạn Kết quả cho thấy, khách hàng có nhu cầu vay ngắn hạn và dài hạn gần như là tương đương với nhau.
# Bảng tần số
e <- table(thoihan, loan_status);e
## loan_status
## thoihan Approved Rejected
## Ngắn hạn 1412 751
## Dài hạn 1244 862
# Bảng tần suất
ee <- prop.table(e);ee
## loan_status
## thoihan Approved Rejected
## Ngắn hạn 0.3307566 0.1759194
## Dài hạn 0.2914031 0.2019208
addmargins(e)
## loan_status
## thoihan Approved Rejected Sum
## Ngắn hạn 1412 751 2163
## Dài hạn 1244 862 2106
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = thoihan)) + geom_bar(position = 'dodge')
#### Rủi ro tương đối (Risk ratio)
library(epitools)
epitab(e, method = "riskratio")
## $tab
## loan_status
## thoihan Approved p0 Rejected p1 riskratio lower upper
## Ngắn hạn 1412 0.6527970 751 0.3472030 1.000000 NA NA
## Dài hạn 1244 0.5906933 862 0.4093067 1.178869 1.091202 1.273579
## loan_status
## thoihan p.value
## Ngắn hạn NA
## Dài hạn 3.067475e-05
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo thời hạn vay là 1.178869 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng thời hạn vay dài hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà hạn vay ngắn hơn.
epitab(e, method = "oddsratio")
## $tab
## loan_status
## thoihan Approved p0 Rejected p1 oddsratio lower upper
## Ngắn hạn 1412 0.5316265 751 0.4655921 1.000000 NA NA
## Dài hạn 1244 0.4683735 862 0.5344079 1.302812 1.150858 1.474828
## loan_status
## thoihan p.value
## Ngắn hạn NA
## Dài hạn 3.067475e-05
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ chênh lệch (odd ratio) của những khách hàng được chấp nhận vay theo thời hạn vay là 1.302812 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có thời hạn vay cao hơn và xấp xỉ bằng tỉ lệ những khách hàng được chấp nhận vay mà thời hạn vay ngắn hơn.
Kiểm định tính độc lập cho 2 biến loan_status và loan_term:
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và loan_term độc lập với nhau
H1: loan_status và loan_term không độc lập với nhau
eee <- table(thoihan,loan_status); eee
## loan_status
## thoihan Approved Rejected
## Ngắn hạn 1412 751
## Dài hạn 1244 862
chisq.test(eee)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: eee
## X-squared = 17.244, df = 1, p-value = 3.287e-05
Kết quả p-value = 3.287e-05 < 5% bác bỏ giả thuyết H0, do đó kết luận giữa loan_status và loan_term có liên quan với nhau,
Tiến hành tách biến cibil_score nhằm mục đích dễ dàng thực hiện thống kê mô tả cũng như dễ dàng trong việc vẽ đồ thị
diem <- cut(loan$cibil_score, breaks = c(0,600,900), labels = c('Điểm thấp', 'Điểm cao'))
table(diem)
## diem
## Điểm thấp Điểm cao
## 2144 2125
Sau khi tiến hành tách biến điểm tín dụng ra làm 2 mức: 0 đến 600
điểm: Điểm thấp
600 đến 900 điểm: Điểm cao Kết quả cho thấy, khách hàng có điểm tín dụng
gần như là tương đương với nhau, với 2125 khách hàng có điểm cao và 2144
khách hàng có điểm thấp.
# Bảng tần số
f <- table(diem, loan_status);f
## loan_status
## diem Approved Rejected
## Điểm thấp 542 1602
## Điểm cao 2114 11
# Bảng tần suất
ff <- prop.table(f);ff
## loan_status
## diem Approved Rejected
## Điểm thấp 0.126961818 0.375263528
## Điểm cao 0.495197939 0.002576716
addmargins(f)
## loan_status
## diem Approved Rejected Sum
## Điểm thấp 542 1602 2144
## Điểm cao 2114 11 2125
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = diem)) + geom_bar(position = 'dodge')
library(epitools)
epitab(f, method = "riskratio")
## $tab
## loan_status
## diem Approved p0 Rejected p1 riskratio lower
## Điểm thấp 542 0.2527985 1602 0.747201493 1.000000000 NA
## Điểm cao 2114 0.9948235 11 0.005176471 0.006927811 0.003840529
## loan_status
## diem upper p.value
## Điểm thấp NA NA
## Điểm cao 0.01249686 0
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo điểm tín dụng là 0.006927811 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có điểm tín dụng cao hơn những khách hàng được chấp nhận vay mà điểm tín dụng thấp hơn.
epitab(f, method = "oddsratio")
## $tab
## loan_status
## diem Approved p0 Rejected p1 oddsratio lower
## Điểm thấp 542 0.2040663 1602 0.993180409 1.000000000 NA
## Điểm cao 2114 0.7959337 11 0.006819591 0.001760453 0.0009657338
## loan_status
## diem upper p.value
## Điểm thấp NA NA
## Điểm cao 0.003209161 0
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ chênh lệch (odd ratio) của những khách hàng được chấp nhận vay theo điểm tín dụng là 0.001760453 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có điểm tín dụng cao hơn những khách hàng được chấp nhận vay mà điểm tín dụng thấp hơn.
Kiểm định tính độc lập cho 2 biến loan_status và cibil_score:
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và cibil_score độc lập với nhau
H1: loan_status và cibil_score không độc lập với nhau
fff <- table(diem,loan_status); fff
## loan_status
## diem Approved Rejected
## Điểm thấp 542 1602
## Điểm cao 2114 11
chisq.test(fff)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: fff
## X-squared = 2496.5, df = 1, p-value < 2.2e-16
Kết quả p-value = 2.2e-16 < 5% bác bỏ giả thuyết H0 do đó kết luận giữa loan_status và cibil_score có liên quan với nhau.
Tiến hành tách biến residential_assets_value nhằm mục đích dễ dàng thực hiện thống kê mô tả cũng như dễ dàng trong việc vẽ đồ thị
nha <- cut(loan$residential_assets_value, breaks = c(-110000,10000000,30000000), labels = c('Giá trị nhà thấp', 'Giá trị nhà cao'))
table(nha)
## nha
## Giá trị nhà thấp Giá trị nhà cao
## 3010 1259
Sau khi tiến hành tách biến giá trị nhà ở ra làm 2 mức: -100000 nghìn
đồng đến 10 tỷ: Giá trị nhà thấp
10 tỷ đến 30 tỷ: Giá trị nhà cao Kết quả cho thấy, giá trị nhà ở của
khách hàng chủ yếu là nhà có giá trị thấp.
# Bảng tần số
g <- table(nha, loan_status);g
## loan_status
## nha Approved Rejected
## Giá trị nhà thấp 1884 1126
## Giá trị nhà cao 772 487
# Bảng tần suất
gg <- prop.table(g);gg
## loan_status
## nha Approved Rejected
## Giá trị nhà thấp 0.4413212 0.2637620
## Giá trị nhà cao 0.1808386 0.1140782
addmargins(g)
## loan_status
## nha Approved Rejected Sum
## Giá trị nhà thấp 1884 1126 3010
## Giá trị nhà cao 772 487 1259
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = nha)) + geom_bar(position = 'dodge')
library(epitools)
epitab(g, method = "riskratio")
## $tab
## loan_status
## nha Approved p0 Rejected p1 riskratio lower
## Giá trị nhà thấp 1884 0.6259136 1126 0.3740864 1.000000 NA
## Giá trị nhà cao 772 0.6131851 487 0.3868149 1.034026 0.9511915
## loan_status
## nha upper p.value
## Giá trị nhà thấp NA NA
## Giá trị nhà cao 1.124074 0.4464083
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo giá trị nhà ở là 1.018327 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có giá trị nhà ở cao hơn những khách hàng được chấp nhận vay mà giá trị nhà ở thấp.
epitab(g, method = "oddsratio")
## $tab
## loan_status
## nha Approved p0 Rejected p1 oddsratio lower
## Giá trị nhà thấp 1884 0.7093373 1126 0.6980781 1.00000 NA
## Giá trị nhà cao 772 0.2906627 487 0.3019219 1.05549 0.921893
## loan_status
## nha upper p.value
## Giá trị nhà thấp NA NA
## Giá trị nhà cao 1.208448 0.4464083
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ chênh lệch (odd ratio) của những khách hàng được chấp nhận vay theo giá trị nhà ở là 1.029721 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có giá trị nhà ở cao hơn những khách hàng được chấp nhận vay mà giá trị nhà ở thấp.
Kiểm định tính độc lập cho 2 biến loan_status và residential_assets_value:
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và residential_assets_value độc lập với nhau
H1: loan_status và residential_assets_value không độc lập với nhau
ggg <- table(nha,loan_status); ggg
## loan_status
## nha Approved Rejected
## Giá trị nhà thấp 1884 1126
## Giá trị nhà cao 772 487
chisq.test(ggg)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: ggg
## X-squared = 0.55886, df = 1, p-value = 0.4547
Kết quả p-value = 0.7763 > 5% cho thấy chưa đủ cơ sở để kết luận rằng loan_status và residential_assets_value có liên quan với nhau.
Tiến hành tách biến commercial_assets_value nhằm mục đích dễ dàng thực hiện thống kê mô tả cũng như dễ dàng trong việc vẽ đồ thị
thuongmai <- cut(loan$commercial_assets_value, breaks = c(-1,5000000,20000000), labels = c('Giá trị TS thương mại thấp', 'Giá trị TS thương mại cao'))
# Bảng tần số
table(thuongmai)
## thuongmai
## Giá trị TS thương mại thấp Giá trị TS thương mại cao
## 2573 1696
Sau khi tiến hành tách biến giá trị nhà ở ra làm 2 mức: -1 nghìn đồng đến 5 tỷ: Giá trị TS thương mại thấp 5 tỷ đến 20 tỷ: Giá trị TS thương mại cao Kết quả cho thấy, giá trị tài sản thương mại của khách hàng chủ yếu có giá trị thấp.
# Bảng tần số
h <- table(thuongmai, loan_status);h
## loan_status
## thuongmai Approved Rejected
## Giá trị TS thương mại thấp 1599 974
## Giá trị TS thương mại cao 1057 639
# Bảng tần suất
hh <- prop.table(h);hh
## loan_status
## thuongmai Approved Rejected
## Giá trị TS thương mại thấp 0.3745608 0.2281565
## Giá trị TS thương mại cao 0.2475990 0.1496838
addmargins(h)
## loan_status
## thuongmai Approved Rejected Sum
## Giá trị TS thương mại thấp 1599 974 2573
## Giá trị TS thương mại cao 1057 639 1696
## Sum 2656 1613 4269
# Đồ thị
ggplot(loan, aes(loan_status, fill = thuongmai)) + geom_bar(position = 'dodge')
library(epitools)
epitab(h, method = "riskratio")
## $tab
## loan_status
## thuongmai Approved p0 Rejected p1 riskratio
## Giá trị TS thương mại thấp 1599 0.6214536 974 0.3785464 1.0000000
## Giá trị TS thương mại cao 1057 0.6232311 639 0.3767689 0.9953042
## loan_status
## thuongmai lower upper p.value
## Giá trị TS thương mại thấp NA NA NA
## Giá trị TS thương mại cao 0.9199535 1.076827 0.9229223
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo giá trị tài sản thương mại là 1.018327 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có giá trị tài sản thương mại cao hơn những khách hàng được chấp nhận vay mà giá trị thấp.
epitab(h, method = "oddsratio")
## $tab
## loan_status
## thuongmai Approved p0 Rejected p1 oddsratio
## Giá trị TS thương mại thấp 1599 0.6020331 974 0.6038438 1.0000000
## Giá trị TS thương mại cao 1057 0.3979669 639 0.3961562 0.9924654
## loan_status
## thuongmai lower upper p.value
## Giá trị TS thương mại thấp NA NA NA
## Giá trị TS thương mại cao 0.8745689 1.126255 0.9229223
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ rủi ro tương đối (risk ratio) của những khách hàng được chấp nhận vay theo giá trị tài sản thương mại là 0.9924654 tức là tỉ lệ những khách hàng được chấp nhận vay cao là khách hàng có giá trị tài sản thương mại cao hơn những khách hàng được chấp nhận vay mà giá trị thấp.
Kiểm định tính độc lập cho 2 biến loan_status và commercial_assets_value:
Phương pháp chi bình phương: Giả thuyết
H0: loan_status và commercial_assets_value độc lập với nhau
H1: loan_status và commercial_assets_value không độc lập với nhau
hhh <- table(thuongmai,loan_status); hhh
## loan_status
## thuongmai Approved Rejected
## Giá trị TS thương mại thấp 1599 974
## Giá trị TS thương mại cao 1057 639
chisq.test(hhh)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: hhh
## X-squared = 0.0072187, df = 1, p-value = 0.9323
Kết quả p-value = 0.9323 > 5% cho thấy chưa đủ cơ sở để kết luận rằng loan_status và residential_assets_value có liên quan với nhau.
# Bảng tần số
a1 <- table(education, diem);a1
## diem
## education Điểm thấp Điểm cao
## Graduate 1079 1065
## Not Graduate 1065 1060
# Bảng tần suất
aa1 <- prop.table(a1);aa1
## diem
## education Điểm thấp Điểm cao
## Graduate 0.2527524 0.2494729
## Not Graduate 0.2494729 0.2483017
addmargins(a1)
## diem
## education Điểm thấp Điểm cao Sum
## Graduate 1079 1065 2144
## Not Graduate 1065 1060 2125
## Sum 2144 2125 4269
# Đồ thị
ggplot(loan, aes( cibil_score , fill = education)) + geom_bar(position = 'dodge')
library(epitools)
epitab(a1, method = "riskratio")
## $tab
## diem
## education Điểm thấp p0 Điểm cao p1 riskratio lower
## Graduate 1079 0.5032649 1065 0.4967351 1.000000 NA
## Not Graduate 1065 0.5011765 1060 0.4988235 1.004204 0.945476
## diem
## education upper p.value
## Graduate NA NA
## Not Graduate 1.066581 0.9025631
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng chưa tốt nghiệp mà điểm tín dụng thấp cao gấp 1.004204 lần tỉ lệ khách hàng chưa tốt nghiệp mà điểm tín dụng thấp.
epitab(a1, method = "oddsratio")
## $tab
## diem
## education Điểm thấp p0 Điểm cao p1 oddsratio lower
## Graduate 1079 0.5032649 1065 0.5011765 1.000000 NA
## Not Graduate 1065 0.4967351 1060 0.4988235 1.008389 0.8943674
## diem
## education upper p.value
## Graduate NA NA
## Not Graduate 1.136947 0.9025631
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng đã tốt nghiệp mà điểm tín dụng cao thấp gấp 1.008389 lần tỉ lệ khách hàng đã tốt nghiệp mà điểm tín dụng thấp
Kiểm định tính độc lập cho 2 biến (cibil_score) và (education):
Phương pháp chi bình phương: Giả thuyết
H0: cibil_score và education độc lập với nhau
H1: cibil_score và education không độc lập với nhau
aaa1 <- table(education,diem); aaa1
## diem
## education Điểm thấp Điểm cao
## Graduate 1079 1065
## Not Graduate 1065 1060
chisq.test(aaa1)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: aaa1
## X-squared = 0.011203, df = 1, p-value = 0.9157
Kết quả p-value = 0.9157 > 5% nên chưa đủ cơ sở để bác bỏ giả thuyết Ho. Nghĩa là chưa đủ chứng cứ để kết luận rằng cibil_score và education có liên quan với nhau.
self_employed <- loan$self_employed
# Bảng tần số
b1 <- table(self_employed, diem);b1
## diem
## self_employed Điểm thấp Điểm cao
## No 1063 1056
## Yes 1081 1069
# Bảng tần suất
bb1 <- prop.table(b1);bb1
## diem
## self_employed Điểm thấp Điểm cao
## No 0.2490045 0.2473647
## Yes 0.2532209 0.2504099
addmargins(b1)
## diem
## self_employed Điểm thấp Điểm cao Sum
## No 1063 1056 2119
## Yes 1081 1069 2150
## Sum 2144 2125 4269
# Đồ thị
ggplot(loan, aes( cibil_score , fill = self_employed)) + geom_bar(position = 'dodge')
library(epitools)
epitab(b1, method = "riskratio")
## $tab
## diem
## self_employed Điểm thấp p0 Điểm cao p1 riskratio lower
## No 1063 0.5016517 1056 0.4983483 1.0000000 NA
## Yes 1081 0.5027907 1069 0.4972093 0.9977145 0.9393648
## diem
## self_employed upper p.value
## No NA NA
## Yes 1.059689 0.9511902
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng chưa làm chủ mà điểm tín dụng thấp cao gấp 0.9977145 lần tỉ lệ khách hàng chưa làm mà điểm tín dụng thấp.
epitab(b1, method = "oddsratio")
## $tab
## diem
## self_employed Điểm thấp p0 Điểm cao p1 oddsratio lower
## No 1063 0.4958022 1056 0.4969412 1.0000000 NA
## Yes 1081 0.5041978 1069 0.5030588 0.9954544 0.8828938
## diem
## self_employed upper p.value
## No NA NA
## Yes 1.122365 0.9511902
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng làm chủ mà điểm tín dụng cao cao gấp 0.9954544 lần tỉ lệ khách hàng chưa làm mà điểm tín dụng thấp.
Kiểm định tính độc lập cho 2 biến cibil_score và self_employed:
Phương pháp chi bình phương: Giả thuyết
H0: cibil_score và self_employed độc lập với nhau
H1: cibil_score và self_employed không độc lập với nhau
bbb1 <- table(self_employed,diem); bbb1
## diem
## self_employed Điểm thấp Điểm cao
## No 1063 1056
## Yes 1081 1069
chisq.test(bbb1)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: bbb1
## X-squared = 0.0019189, df = 1, p-value = 0.9651
Kết quả p-value = 0.9651 > 5% nên chưa đủ cơ sở để bác bỏ giả thuyết Ho. Nghĩa là chưa đủ chứng cứ để kết luận rằng cibil_score và self_employed có liên quan với nhau.
# Bảng tần số
c1 <- table(thunhap, diem);c1
## diem
## thunhap Điểm thấp Điểm cao
## Thu nhập thấp 1053 1071
## Thu nhập cao 1091 1054
# Bảng tần suất
cc1 <- prop.table(c1);cc1
## diem
## thunhap Điểm thấp Điểm cao
## Thu nhập thấp 0.2466620 0.2508784
## Thu nhập cao 0.2555634 0.2468962
addmargins(c1)
## diem
## thunhap Điểm thấp Điểm cao Sum
## Thu nhập thấp 1053 1071 2124
## Thu nhập cao 1091 1054 2145
## Sum 2144 2125 4269
library(epitools)
epitab(c1, method = "riskratio")
## $tab
## diem
## thunhap Điểm thấp p0 Điểm cao p1 riskratio lower
## Thu nhập thấp 1053 0.4957627 1071 0.5042373 1.0000000 NA
## Thu nhập cao 1091 0.5086247 1054 0.4913753 0.9744922 0.9174983
## diem
## thunhap upper p.value
## Thu nhập thấp NA NA
## Thu nhập cao 1.035026 0.4085919
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng thu nhập thấp mà điểm tín dụng thấp cao gấp 0.9744922 khách hàng có thu nhập thấp mà điểm tín dụng cao.
epitab(c1, method = "oddsratio")
## $tab
## diem
## thunhap Điểm thấp p0 Điểm cao p1 oddsratio lower upper
## Thu nhập thấp 1053 0.4911381 1071 0.504 1.0000000 NA NA
## Thu nhập cao 1091 0.5088619 1054 0.496 0.9498494 0.8424388 1.070955
## diem
## thunhap p.value
## Thu nhập thấp NA
## Thu nhập cao 0.4085919
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng thu nhập cao mà điểm tín dụng cao cao gấp 0.9498494 khách hàng có thu nhập cao mà điểm tín dụng thấp.
Kiểm định tính độc lập cho 2 biến cibil_score và income_annum:
Phương pháp chi bình phương: Giả thuyết
H0: cibil_score và income_annum độc lập với nhau
H1: cibil_score và income_annum không độc lập với nhau
ccc1 <- table(thunhap,diem); ccc1
## diem
## thunhap Điểm thấp Điểm cao
## Thu nhập thấp 1053 1071
## Thu nhập cao 1091 1054
chisq.test(ccc1)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: ccc1
## X-squared = 0.65571, df = 1, p-value = 0.4181
Kết quả p-value = 0.4181 > 5% nên chưa đủ cơ sở để bác bỏ giả thuyết Ho. Nghĩa là chưa đủ chứng cứ để kết luận rằng cibil_score và income_annum có liên quan với nhau.
# Bảng tần số
d1 <- table(tienvay, diem);d1
## diem
## tienvay Điểm thấp Điểm cao
## Từ 0-15 tỷ 1096 1121
## Từ 15-25 tỷ 713 660
## Từ 25-39.5 tỷ 335 344
# Bảng tần suất
dd1 <- prop.table(d1);dd1
## diem
## tienvay Điểm thấp Điểm cao
## Từ 0-15 tỷ 0.25673460 0.26259077
## Từ 15-25 tỷ 0.16701804 0.15460295
## Từ 25-39.5 tỷ 0.07847271 0.08058093
addmargins(d1)
## diem
## tienvay Điểm thấp Điểm cao Sum
## Từ 0-15 tỷ 1096 1121 2217
## Từ 15-25 tỷ 713 660 1373
## Từ 25-39.5 tỷ 335 344 679
## Sum 2144 2125 4269
library(epitools)
epitab(d1, method = "riskratio")
## $tab
## diem
## tienvay Điểm thấp p0 Điểm cao p1 riskratio lower
## Từ 0-15 tỷ 1096 0.4943618 1121 0.5056382 1.0000000 NA
## Từ 15-25 tỷ 713 0.5193008 660 0.4806992 0.9506781 0.8875793
## Từ 25-39.5 tỷ 335 0.4933726 344 0.5066274 1.0019562 0.9204251
## diem
## tienvay upper p.value
## Từ 0-15 tỷ NA NA
## Từ 15-25 tỷ 1.018263 0.1492921
## Từ 25-39.5 tỷ 1.090709 0.9650473
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có số tiền vay thấp mà điểm tín dụng thấp cao hơn 1.0019562 so với tỉ lệ khách hàng có số tiền vay thấp mà điểm tín dụng cao.
epitab(d1, method = "oddsratio")
## $tab
## diem
## tienvay Điểm thấp p0 Điểm cao p1 oddsratio lower
## Từ 0-15 tỷ 1096 0.511194 1121 0.5275294 1.0000000 NA
## Từ 15-25 tỷ 713 0.332556 660 0.3105882 0.9050224 0.7909820
## Từ 25-39.5 tỷ 335 0.156250 344 0.1618824 1.0039650 0.8453622
## diem
## tienvay upper p.value
## Từ 0-15 tỷ NA NA
## Từ 15-25 tỷ 1.035505 0.1492921
## Từ 25-39.5 tỷ 1.192324 0.9650473
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có số tiền vay cao mà điểm tín dụng cao cao hơn 1.0039650 so với tỉ lệ khách hàng có số tiền vay cao mà điểm tín dụng thấp.
Kiểm định tính độc lập cho 2 biến cibil_score và loan_amount:
Phương pháp chi bình phương: Giả thuyết
H0: cibil_score và loan_amount độc lập với nhau
H1: cibil_score và loan_amount không độc lập với nhau
ddd1 <- table(tienvay,diem); ddd1
## diem
## tienvay Điểm thấp Điểm cao
## Từ 0-15 tỷ 1096 1121
## Từ 15-25 tỷ 713 660
## Từ 25-39.5 tỷ 335 344
chisq.test(ddd1)
##
## Pearson's Chi-squared test
##
## data: ddd1
## X-squared = 2.3626, df = 2, p-value = 0.3069
Kết quả p-value = 0.3069 > 5% nên chưa đủ cơ sở để bác bỏ giả thuyết Ho. Nghĩa là chưa đủ chứng cứ để kết luận rằng cibil_score và loan_amount có liên quan với nhau.
# Bảng tần số
e1 <- table(thoihan, diem);e1
## diem
## thoihan Điểm thấp Điểm cao
## Ngắn hạn 1110 1053
## Dài hạn 1034 1072
# Bảng tần suất
ee1 <- prop.table(e1);ee1
## diem
## thoihan Điểm thấp Điểm cao
## Ngắn hạn 0.2600141 0.2466620
## Dài hạn 0.2422113 0.2511127
addmargins(e1)
## diem
## thoihan Điểm thấp Điểm cao Sum
## Ngắn hạn 1110 1053 2163
## Dài hạn 1034 1072 2106
## Sum 2144 2125 4269
library(epitools)
epitab(e1, method = "riskratio")
## $tab
## diem
## thoihan Điểm thấp p0 Điểm cao p1 riskratio lower upper
## Ngắn hạn 1110 0.5131761 1053 0.4868239 1.000000 NA NA
## Dài hạn 1034 0.4909782 1072 0.5090218 1.045598 0.9844487 1.110545
## diem
## thoihan p.value
## Ngắn hạn NA
## Dài hạn 0.1502668
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có thời hạn vay ngắn mà điểm tín dụng thấp cao gấp 1.045598 tỉ lệ khách hàng có thời gian vay ngắn hạn mà điểm tín dụng cao.
epitab(e1, method = "oddsratio")
## $tab
## diem
## thoihan Điểm thấp p0 Điểm cao p1 oddsratio lower upper
## Ngắn hạn 1110 0.5177239 1053 0.4955294 1.000000 NA NA
## Dài hạn 1034 0.4822761 1072 0.5044706 1.092871 0.9692593 1.232247
## diem
## thoihan p.value
## Ngắn hạn NA
## Dài hạn 0.1502668
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có thời hạn vay dài mà điểm tín dụng cao cao gấp 1.092871 tỉ lệ khách hàng có thời gian vay dài hạn mà điểm tín dụng thấp.
Kiểm định tính độc lập cho 2 biến cibil_score và loan_term:
Phương pháp chi bình phương: Giả thuyết
H0: cibil_score và loan_term độc lập với nhau
H1: cibil_score và loan_term không độc lập với nhau
eee1 <- table(thoihan,diem); eee1
## diem
## thoihan Điểm thấp Điểm cao
## Ngắn hạn 1110 1053
## Dài hạn 1034 1072
chisq.test(eee1)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: eee1
## X-squared = 2.0154, df = 1, p-value = 0.1557
Kết quả p-value = 0.1557 > 5% nên chưa đủ cơ sở để bác bỏ giả thuyết Ho. Nghĩa là chưa đủ chứng cứ để kết luận rằng cibil_score và loan_term có liên quan với nhau.
# Bảng tần số
g1 <- table(nha, diem);g1
## diem
## nha Điểm thấp Điểm cao
## Giá trị nhà thấp 1501 1509
## Giá trị nhà cao 643 616
# Bảng tần suất
gg1 <- prop.table(g1);gg1
## diem
## nha Điểm thấp Điểm cao
## Giá trị nhà thấp 0.3516046 0.3534786
## Giá trị nhà cao 0.1506208 0.1442961
addmargins(g1)
## diem
## nha Điểm thấp Điểm cao Sum
## Giá trị nhà thấp 1501 1509 3010
## Giá trị nhà cao 643 616 1259
## Sum 2144 2125 4269
library(epitools)
epitab(g1, method = "riskratio")
## $tab
## diem
## nha Điểm thấp p0 Điểm cao p1 riskratio lower
## Giá trị nhà thấp 1501 0.4986711 1509 0.5013289 1.0000000 NA
## Giá trị nhà cao 643 0.5107228 616 0.4892772 0.9759605 0.9129497
## diem
## nha upper p.value
## Giá trị nhà thấp NA NA
## Giá trị nhà cao 1.04332 0.481008
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có nhà ở giá trị thấp mà điểm tín dụng thấp cao gấp 1.005843 tỉ lệ khách hàng có nhà ở giá trị thấp mà điểm tín dụng cao.
epitab(g1, method = "oddsratio")
## $tab
## diem
## nha Điểm thấp p0 Điểm cao p1 oddsratio lower
## Giá trị nhà thấp 1501 0.7000933 1509 0.7101176 1.0000000 NA
## Giá trị nhà cao 643 0.2999067 616 0.2898824 0.9529304 0.8354362
## diem
## nha upper p.value
## Giá trị nhà thấp NA NA
## Giá trị nhà cao 1.086949 0.481008
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có nhà ở giá trị cao mà điểm tín dụng cao cao gấp 1.011686 tỉ lệ khách hàng có nhà ở giá trị cao mà điểm tín dụng thấp.
Kiểm định tính độc lập cho 2 biến cibil_score và residential_assets_value:
Phương pháp chi bình phương: Giả thuyết
H0: cibil_score và residential_assets_value độc lập với nhau
H1: cibil_score và residential_assets_value không độc lập với nhau
ggg1 <- table(nha,diem); ggg1
## diem
## nha Điểm thấp Điểm cao
## Giá trị nhà thấp 1501 1509
## Giá trị nhà cao 643 616
chisq.test(ggg1)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: ggg1
## X-squared = 0.46866, df = 1, p-value = 0.4936
Kết quả p-value = 0.9276 > 5% nên chưa đủ cơ sở để bác bỏ giả thuyết Ho. Nghĩa là chưa đủ chứng cứ để kết luận rằng cibil_score và residential_assets_value có liên quan với nhau.
# Bảng tần số
h1 <- table(thuongmai, diem);h1
## diem
## thuongmai Điểm thấp Điểm cao
## Giá trị TS thương mại thấp 1287 1286
## Giá trị TS thương mại cao 857 839
# Bảng tần suất
hh1 <- prop.table(h1);hh1
## diem
## thuongmai Điểm thấp Điểm cao
## Giá trị TS thương mại thấp 0.3014758 0.3012415
## Giá trị TS thương mại cao 0.2007496 0.1965331
addmargins(h1)
## diem
## thuongmai Điểm thấp Điểm cao Sum
## Giá trị TS thương mại thấp 1287 1286 2573
## Giá trị TS thương mại cao 857 839 1696
## Sum 2144 2125 4269
library(epitools)
epitab(h1, method = "riskratio")
## $tab
## diem
## thuongmai Điểm thấp p0 Điểm cao p1 riskratio
## Giá trị TS thương mại thấp 1287 0.5001943 1286 0.4998057 1.0000000
## Giá trị TS thương mại cao 857 0.5053066 839 0.4946934 0.9897715
## diem
## thuongmai lower upper p.value
## Giá trị TS thương mại thấp NA NA NA
## Giá trị TS thương mại cao 0.9305419 1.052771 0.7544902
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có giá trị tài sản thương mại thấp mà điểm tín dụng thấp cao gấp 0.9897715 tỉ lệ khách hàng có giá trị tài sản thương mại thấp mà điểm tín dụng cao.
epitab(h1, method = "oddsratio")
## $tab
## diem
## thuongmai Điểm thấp p0 Điểm cao p1 oddsratio
## Giá trị TS thương mại thấp 1287 0.6002799 1286 0.6051765 1.0000000
## Giá trị TS thương mại cao 857 0.3997201 839 0.3948235 0.9797578
## diem
## thuongmai lower upper p.value
## Giá trị TS thương mại thấp NA NA NA
## Giá trị TS thương mại cao 0.8667028 1.10756 0.7544902
##
## $measure
## [1] "wald"
##
## $conf.level
## [1] 0.95
##
## $pvalue
## [1] "fisher.exact"
Kết quả, tỉ lệ khách hàng có giá trị tài sản thương mại cao mà điểm tín dụng cao cao gấp 0.9797578 tỉ lệ khách hàng có giá trị tài sản thương mại cao mà điểm tín dụng thấp.
Kiểm định tính độc lập cho 2 biến cibil_score và commercial_assets_value:
Phương pháp chi bình phương: Giả thuyết
H0: cibil_score và commercial_assets_value độc lập với nhau
H1: cibil_score và commercial_assets_value không độc lập với nhau
hhh1 <- table(thuongmai,diem); hhh1
## diem
## thuongmai Điểm thấp Điểm cao
## Giá trị TS thương mại thấp 1287 1286
## Giá trị TS thương mại cao 857 839
chisq.test(hhh1)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: hhh1
## X-squared = 0.087394, df = 1, p-value = 0.7675
Kết quả p-value = 0.7675 > 5% nên chưa đủ cơ sở để bác bỏ giả thuyết Ho. Nghĩa là chưa đủ chứng cứ để kết luận rằng cibil_score và commercial_assets_value có liên quan với nhau.
Ước lượng tỷ lệ khách hàng được chấp nhận vay có bằng 62% không? Ta kiểm định giả thuyết:
H0: Tỷ kệ khách hàng được chấp nhận vay bằng 62%
H1: Tỷ lệ khách hàng được chấp nhận vay không bằng 62%
ul <- loan[loan$loan_status =="Approved",]
prop.test(length(ul$loan_status), length(loan$loan_status), p = 0.62)
##
## 1-sample proportions test with continuity correction
##
## data: length(ul$loan_status) out of length(loan$loan_status), null probability 0.62
## X-squared = 6962.6, df = 1, p-value < 2.2e-16
## alternative hypothesis: true p is not equal to 0.62
## 95 percent confidence interval:
## 0.000000000 0.001120849
## sample estimates:
## p
## 0
Với khoảng tin cậy 95% ước lượng tỷ lệ khách hàng được chấp nhận vay bằng 62% nằm trong khoảng từ 0.000000000 đến 0.004770729. p-value < 0.05, bác bỏ giả thuyết H0. Do đó tỷ lệ khách hàng được chấp nhận vay không bằng 62%.
Mô hình có biến phụ thuộc (định tính): loan_status và các biến độc lập bao gồm cibil_score, loan_amount, loan_term.
Mô hình hồi quy logistic với link function=“logit” có dạng tổng quát như sau:
\(log(\frac{\pi(x)}{1 - \pi(x)}) = \beta_0 + \beta_1.x_1 + \beta_2.x_2 + ... +\beta_m.x_m\)
loan$loan_status <- as.factor(loan$loan_status)
logit <- glm((loan_status) ~ loan_amount + cibil_score + loan_term, family = binomial(link = "logit"), data = loan)
summary(logit)
##
## Call:
## glm(formula = (loan_status) ~ loan_amount + cibil_score + loan_term,
## family = binomial(link = "logit"), data = loan)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 1.131e+01 4.104e-01 27.553 < 2e-16 ***
## loan_amount -1.649e-08 6.372e-09 -2.588 0.00967 **
## cibil_score -2.399e-02 7.984e-04 -30.042 < 2e-16 ***
## loan_term 1.455e-01 1.111e-02 13.094 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 5660.7 on 4268 degrees of freedom
## Residual deviance: 1946.7 on 4265 degrees of freedom
## AIC: 1954.7
##
## Number of Fisher Scoring iterations: 7
Mô hình probit có dạng tổng quát:
\(\pi(x) = \phi(\alpha + \beta x)\)
loan$loan_status <- as.factor(loan$loan_status)
probit <- glm((loan_status) ~ loan_amount + cibil_score + loan_term, family = binomial(link = "probit"), data = loan)
summary(probit)
##
## Call:
## glm(formula = (loan_status) ~ loan_amount + cibil_score + loan_term,
## family = binomial(link = "probit"), data = loan)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 5.737e+00 1.884e-01 30.447 <2e-16 ***
## loan_amount -9.594e-09 3.433e-09 -2.795 0.0052 **
## cibil_score -1.238e-02 3.596e-04 -34.425 <2e-16 ***
## loan_term 8.367e-02 5.901e-03 14.179 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 5660.7 on 4268 degrees of freedom
## Residual deviance: 2007.5 on 4265 degrees of freedom
## AIC: 2015.5
##
## Number of Fisher Scoring iterations: 7
Mô hình tổng quát của Cloglog:
\(Cloglog(π)=log(−log(1−π))=β_0+β_1X_1+β_2X_2+⋯+β_kX_k)\)
cloglog <- glm((loan_status) ~ loan_amount + cibil_score + loan_term, family = binomial(link = "cloglog"), data = loan)
## Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
summary(cloglog)
##
## Call:
## glm(formula = (loan_status) ~ loan_amount + cibil_score + loan_term,
## family = binomial(link = "cloglog"), data = loan)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 5.437e+00 1.893e-01 28.72 <2e-16 ***
## loan_amount -8.278e-09 3.832e-09 -2.16 0.0307 *
## cibil_score -1.398e-02 4.073e-04 -34.31 <2e-16 ***
## loan_term 1.324e-01 7.109e-03 18.62 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 5660.7 on 4268 degrees of freedom
## Residual deviance: 2123.8 on 4265 degrees of freedom
## AIC: 2131.8
##
## Number of Fisher Scoring iterations: 15
AIC(logit) = 1954.7
AIC(probit) = 2015.5
AIC(cloglog) = 2131.8
Mô hình logit có AIC nhỏ nhất nên ta chọn MH logit
Deviance(logit) = 1946.7
Deviance(probit) = 2007.5
Deviance(cloglog) = 2123.8
Mô hình logit có deviance nhỏ nhất nên ta chọn MH logit
library(DescTools)
## Warning: package 'DescTools' was built under R version 4.3.1
##
## Attaching package: 'DescTools'
## The following object is masked from 'package:car':
##
## Recode
BS1 <- BrierScore(logit)
BS1
## [1] 0.06465117
library(DescTools)
BS2 <- BrierScore(probit)
BS2
## [1] 0.06706619
library(DescTools)
BS3 <- BrierScore(cloglog)
BS3
## [1] 0.07408959
Dựa vào tiêu chí Brier score ta thấy MH logit có giá trị nhỏ nhất (0.06706619) nên ta chọn MH logit
library(caret)
## Warning: package 'caret' was built under R version 4.3.1
## Loading required package: lattice
##
## Attaching package: 'caret'
## The following objects are masked from 'package:DescTools':
##
## MAE, RMSE
## The following object is masked from 'package:survival':
##
## cluster
## The following object is masked from 'package:purrr':
##
## lift
loan_status <- loan$loan_status
predictions <- predict(logit, newdata = loan, type = "response")
predicted_classes <- ifelse(predictions > 0.5, "1", "0")
predictions1<-factor(predicted_classes, levels = c("0","1"))
actual<- factor(loan_status, labels = c("0","1"))
confusionMatrix(table(predictions1, actual))
## Confusion Matrix and Statistics
##
## actual
## predictions1 0 1
## 0 2481 184
## 1 175 1429
##
## Accuracy : 0.9159
## 95% CI : (0.9072, 0.9241)
## No Information Rate : 0.6222
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.8209
##
## Mcnemar's Test P-Value : 0.6729
##
## Sensitivity : 0.9341
## Specificity : 0.8859
## Pos Pred Value : 0.9310
## Neg Pred Value : 0.8909
## Prevalence : 0.6222
## Detection Rate : 0.5812
## Detection Prevalence : 0.6243
## Balanced Accuracy : 0.9100
##
## 'Positive' Class : 0
##
Mô hình có logit có độ chính xác toàn thể là 91.59%, độ nhạy là 93.41% và độ đặc hiệu là 88.59%
library(caret)
predictions <- predict(probit, newdata = loan, type = "response")
predicted_classes <- ifelse(predictions > 0.5, "1", "0")
predictions1<-factor(predicted_classes, levels = c("0","1"))
actual<- factor(loan_status, labels = c("0","1"))
confusionMatrix(table(predictions1, actual))
## Confusion Matrix and Statistics
##
## actual
## predictions1 0 1
## 0 2480 196
## 1 176 1417
##
## Accuracy : 0.9129
## 95% CI : (0.904, 0.9212)
## No Information Rate : 0.6222
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.8142
##
## Mcnemar's Test P-Value : 0.3246
##
## Sensitivity : 0.9337
## Specificity : 0.8785
## Pos Pred Value : 0.9268
## Neg Pred Value : 0.8895
## Prevalence : 0.6222
## Detection Rate : 0.5809
## Detection Prevalence : 0.6268
## Balanced Accuracy : 0.9061
##
## 'Positive' Class : 0
##
Mô hình có probit có độ chính xác toàn thể là 91.29%, độ nhạy là 93.37% và độ đặc hiệu là 87.85%
library(caret)
predictions <- predict(cloglog, newdata = loan, type = "response")
predicted_classes <- ifelse(predictions > 0.5, "1", "0")
predictions1<-factor(predicted_classes, levels = c("0","1"))
actual<- factor(loan_status, labels = c("0","1"))
confusionMatrix(table(predictions1, actual))
## Confusion Matrix and Statistics
##
## actual
## predictions1 0 1
## 0 2506 288
## 1 150 1325
##
## Accuracy : 0.8974
## 95% CI : (0.8879, 0.9063)
## No Information Rate : 0.6222
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 0.778
##
## Mcnemar's Test P-Value : 5.905e-11
##
## Sensitivity : 0.9435
## Specificity : 0.8215
## Pos Pred Value : 0.8969
## Neg Pred Value : 0.8983
## Prevalence : 0.6222
## Detection Rate : 0.5870
## Detection Prevalence : 0.6545
## Balanced Accuracy : 0.8825
##
## 'Positive' Class : 0
##
MH cloglog có độ chính xác toàn thể là 89.74%, độ nhạy là 94.35% và độ đặc hiệu là 82.15%
AIC <- c(1954.7, 2015.5, 2131.8)
Brierscore <- c(0.06465117,0.06706619,0.07408959)
Deviance <- c( 1946.7, 2007.5, 2123.8)
confusionMatrix <- c(0.9159 ,0.9129 ,0.8974)
MH <- c('logit','probit','cloglog')
KetQua <- data.frame(MH, confusionMatrix, Deviance, Brierscore, AIC)
KetQua
## MH confusionMatrix Deviance Brierscore AIC
## 1 logit 0.9159 1946.7 0.06465117 1954.7
## 2 probit 0.9129 2007.5 0.06706619 2015.5
## 3 cloglog 0.8974 2123.8 0.07408959 2131.8
Xét 3 mô hình trên với 4 tiêu chí đánh giá mô hình phù hợp ta có thể thấy được rằng mô hình logit là mô hình phù hợp nhất vì với độ chính xác cao nhất trong 3 mô hình và phù hợp hết 4/4 tiêu chí. Vì vậy Mô hình logit là mô hình được chọn.
Kết quả phân tích hồi quy logit cho thấy, với 9 biến đưa vào mô hình hồi quy để phân tích nhưng kết quả phân tích chỉ có 3 biến độc lập có ý nghĩa thống kê bao gồm:
loan_amount: Số tiền vay
cibil_score: Số điểm tín dụng
loan_term: Thời hạn vay
Với giả thuyết các yếu tố khác không đổi, ảnh hưởng của từng biến đến được diễn giải như sau:
Ở mức ý nghĩa 1%, số tiền vay tác động tiêu cực lên tình trạng cho vay.
Ở mức ý nghĩa 1%, số điểm tín dụng tác động tiêu cực lên tình trạng cho vay.
Ở mức ý nghĩa 1%, thời hạn vay tác động tích cực lên tình trạng cho vay.
Với mục tiêu phân tích các yếu tố ảnh hưởng đến quyết định tín dụng của ngân hàng, nghiên cứu sử dụng dữ liệu quá khứ được trích xuất từ một data khách hàng vay của ngân hàng. Sau khi thực hiện hồi quy và lựa chọn mô hình phù hợp nhất trong 3 mô hình. Kết quả cho thấy mô hình logit là phù hợp nhất. Từ những kết quả trên ta càng thấy rõ được tầm quan trọng của các yếu tố ảnh hưởng đến quyết định tín dụng từ ngân hàng, điều này giúp cho các khách hàng cá nhân hay khách hàng doanh nghiệp có các định hướng cụ thể trong tương lai.
Thứ nhất, áp dụng các chính sách kế toán, ước tính kế toán phù hợp cho việc hạch toán lợi nhuận kế toán, kết hợp với việc xây dựng các chiến lược kinh doanh hiệu quả, tiết kiệm chi phí, tổ chức kiểm soát nội bộ tốt để đảm bảo chỉ tiêu lợi nhuận tăng trưởng bền vững qua từng năm.
Thứ hai, tăng cường sử dụng các khoản cho vay tín chấp bằng cách thế chấp các khoản phải thu, một dạng tín chấp bằng dòng tiền, doanh thu của DNNVV thông qua tài khoản thanh toán của DN mở tại ngân hàng cấp tín dụng bên cạnh sử dụng hình thức vay bằng tài sản đảm bảo.
Thứ ba, ban điều hành DN cần chủ động tích cực tham gia các lớp đào tạo, khóa tập huấn ngành nghề do các chuyên gia trong ngành chia sẻ; tham gia các tổ chức, hiệp hội liên quan để học tập thêm kinh nghiệm, qua đó gây dựng lòng tin với ngân hàng về khả năng nhận định và nắm bắt cơ hội kinh doanh nhằm tạo ra tăng trưởng lợi nhuận và đảm bảo khả năng thanh toán cho ngân hàng.
Thứ tư, ban điều hành DN cần chuyển phần lớn hoặc toàn bộ hoạt động thanh toán của DN cũng như cá nhân qua ngân hàng, cũng như tăng cường sử dụng các sản phẩm dịch vụ tài chính của ngân hàng để xây dựng mối quan hệ bền vững giữa DN và ngân hàng.
Về quy mô cỡ mẫu thì chưa được rộng và cụ thể hơn, mức độ giải thích của mô hình còn thấp do có những nhân tố khác chưa được khám phá cần được tiếp tục nghiên cứu và khắc phục ở các nghiên cứu tiếp theo