{"id":26531813,"url":"https://github.com/kevinwood15/python_ml_kmeans_project","last_synced_at":"2026-07-21T14:03:59.680Z","repository":{"id":281199500,"uuid":"944528166","full_name":"kevinwood15/Python_ML_KMeans_Project","owner":"kevinwood15","description":"This project uses the KMeans ML algorithm to identify segments of the broader population that form the core customer base of a company.","archived":false,"fork":false,"pushed_at":"2025-03-07T17:59:50.000Z","size":282,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T18:38:45.768Z","etag":null,"topics":["cleaning-data","data-science","kmeans-algorithm","machine-learning-algorithms","pca-analysis","python","unsupervised-machine-learning","wrangling-data"],"latest_commit_sha":null,"homepage":"","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/kevinwood15.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":"2025-03-07T14:02:48.000Z","updated_at":"2025-03-07T19:56:23.000Z","dependencies_parsed_at":"2025-03-07T15:22:19.431Z","dependency_job_id":"37edc7e4-e700-4746-abc3-d344cfc4957f","html_url":"https://github.com/kevinwood15/Python_ML_KMeans_Project","commit_stats":null,"previous_names":["kevinwood15/python_kmeans_project","kevinwood15/python_ml_kmeans_project"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kevinwood15/Python_ML_KMeans_Project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinwood15%2FPython_ML_KMeans_Project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinwood15%2FPython_ML_KMeans_Project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinwood15%2FPython_ML_KMeans_Project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinwood15%2FPython_ML_KMeans_Project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kevinwood15","download_url":"https://codeload.github.com/kevinwood15/Python_ML_KMeans_Project/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinwood15%2FPython_ML_KMeans_Project/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35726551,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-21T02:00:06.728Z","response_time":109,"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":["cleaning-data","data-science","kmeans-algorithm","machine-learning-algorithms","pca-analysis","python","unsupervised-machine-learning","wrangling-data"],"created_at":"2025-03-21T18:31:43.838Z","updated_at":"2026-07-21T14:03:59.675Z","avatar_url":"https://github.com/kevinwood15.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python_KMeans_Project\n\nThis project uses the KMeans ML algorithm to identify segments of the broader population that form the core customer base of a company. \n\nI leverage two datasets, one of the general population, and one of actual customers of the company. The  data is messy, so I clean it in preparation for the analysis. I engineer new variables when necessary, address missing  values on features and rows and re-encode categorical features into dummies.  \n\nUsing the general population data, I apply feature scaling and use principal component analysis to reduce the dimensionality. I reduce 81 features down to 33, which explains 85% of the variance. \n\nI apply a K means model on a 25% random sample and use the elbow method to decide upon an optimal cluster number (k=21 clusters). \n\nLastly, I use the fits from the general population to clean, transform, and cluster the customer data and examine differences between the general population and customer data, before drawing conclusions about the typical customers, and forming recommendations on how to tailer avertising to a target group. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinwood15%2Fpython_ml_kmeans_project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkevinwood15%2Fpython_ml_kmeans_project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinwood15%2Fpython_ml_kmeans_project/lists"}