{"id":15051437,"url":"https://github.com/nourayman10/servicecancellationpredictor","last_synced_at":"2026-01-19T02:01:53.549Z","repository":{"id":129417629,"uuid":"493625355","full_name":"NourAyman10/ServiceCancellationPredictor","owner":"NourAyman10","description":"Service Cancellation Predictor Project","archived":false,"fork":false,"pushed_at":"2022-06-03T08:02:31.000Z","size":10517,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-16T05:37:13.478Z","etag":null,"topics":["cart-algorithm","desisiontree","id3-algorithm","jupyter-notebook","knn-algorithm","logistic-regression","pycharm-ide","python3","svm-model","tkinter-python"],"latest_commit_sha":null,"homepage":"https://github.com/NourAyman10/ServiceCancellationPredictor","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NourAyman10.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-18T11:01:15.000Z","updated_at":"2023-11-20T08:22:23.000Z","dependencies_parsed_at":"2023-04-25T19:30:54.477Z","dependency_job_id":null,"html_url":"https://github.com/NourAyman10/ServiceCancellationPredictor","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/NourAyman10/ServiceCancellationPredictor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NourAyman10%2FServiceCancellationPredictor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NourAyman10%2FServiceCancellationPredictor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NourAyman10%2FServiceCancellationPredictor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NourAyman10%2FServiceCancellationPredictor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NourAyman10","download_url":"https://codeload.github.com/NourAyman10/ServiceCancellationPredictor/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NourAyman10%2FServiceCancellationPredictor/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28557784,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-19T00:46:33.223Z","status":"online","status_checked_at":"2026-01-19T02:00:08.049Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cart-algorithm","desisiontree","id3-algorithm","jupyter-notebook","knn-algorithm","logistic-regression","pycharm-ide","python3","svm-model","tkinter-python"],"created_at":"2024-09-24T21:35:15.587Z","updated_at":"2026-01-19T02:01:53.542Z","avatar_url":"https://github.com/NourAyman10.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ServiceCancellationPredictor\n## About Project\n Service cancellation is simply when customers leave doing business with an entity. \nIt involves determining the possibility of customers stopping doing business with an entity. \nIn other words, if a consumer has purchased a subscription to a particular service, we must determine the likelihood that the customer will leave or cancel the membership.\nFor many businesses, the ability to predict that a particular customer is at a high risk of cancelling service while there is still time to do something about it is crucial. \nwhereas the company will attempt to provide some additional functionalities in order to keep the service.\nIn Machine Learning, foreseeing business-related actions is our core work, and for that we managed to predict user churn with an average accuracy of 78%.\nand attractive UI for a better user experience.\n\n\u003cb\u003eDataset Link: [Service Cancellation Dataset](https://drive.google.com/file/d/1PrE7kY9h8yTawg0Ul0Ij5RFjiSO0hdYk/view)\u003cb /\u003e\n  \n## Problem and Algorithms\n  \nProblem stipulated that based on 20 attributes and 7043 record we should make several models that predict whether a user will cancel his service or not \nwe applied 4 models :\n* Decision Tree (ID3 / CART) \n* Logistic Regression \n* SVM \n* KNN\n  \nModels consumed clean data which led to high accuracy:   \n| Model | Accuracy |\n| --- | --- |\n| Decision Tree(ID3) | 77.69% |\n| Decision Tree(CART) | 74.2784% |\n| Logistic Regression | 80.7109% |\n| SVM | 79.18% |  \n| KNN | 74.48% |  \n\n## For GUI\n  \n### Splash Screen  \n![Splash Screen](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/splashScreen.gif)  \n\n### Main Screen\n#### Empty with no data\n![empty inputs](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/noData.png) \n![inputs validation](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/dataValidation.png)\n![methodology validation](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/noMethodology.png)\n#### All data filled\n![filled inputs](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/inputsWithAllData.png)\n![how to fill inputs](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/toFillData.png)  \n#### When customer cancel service\n![customer cancel service](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/coustomerWillCancelService.png)  \n#### When customer keep service\n![customer accept service](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/customerWillKeepTheServices.png)\n#### When train button pressed\n![train model](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/trainPhoto.png)  \n#### When test button pressed\n![test model](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/test_accuracy.png)\n![test logistic regression model](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/test_accuracy_logisticReg.png)\n![show graphs](https://github.com/NourAyman10/ServiceCancellationPredictor/blob/master/showGraphs.png)  \n \n## Contributors\n- [Mohamed-Samy26](https://github.com/Mohamed-Samy26) \n- [RedBiscuits](https://github.com/RedBiscuits)\n- [KareemHussen](https://github.com/KareemHussen)\n- [NourAyman10](https://github.com/NourAyman10)\n- [HaneenIbrahim2](https://github.com/HaneenIbrahim2)\n- [OmarSherif2](https://github.com/OmarSherif2)\n- [Abdelrhman-Sayed70](https://github.com/Abdelrhman-Sayed70) \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnourayman10%2Fservicecancellationpredictor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnourayman10%2Fservicecancellationpredictor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnourayman10%2Fservicecancellationpredictor/lists"}