{"id":23080658,"url":"https://github.com/chen0040/java-naive-bayes-classifier","last_synced_at":"2026-05-22T08:04:05.397Z","repository":{"id":57719650,"uuid":"92610706","full_name":"chen0040/java-naive-bayes-classifier","owner":"chen0040","description":"Package provides java implementation of naive bayes classifier","archived":false,"fork":false,"pushed_at":"2017-06-03T04:07:27.000Z","size":62,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-06-30T13:09:07.075Z","etag":null,"topics":["classification","java","naive-bayes-classifier"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chen0040.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-05-27T16:30:27.000Z","updated_at":"2019-02-06T23:23:20.000Z","dependencies_parsed_at":"2022-09-02T12:31:48.897Z","dependency_job_id":null,"html_url":"https://github.com/chen0040/java-naive-bayes-classifier","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chen0040%2Fjava-naive-bayes-classifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chen0040%2Fjava-naive-bayes-classifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chen0040%2Fjava-naive-bayes-classifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chen0040%2Fjava-naive-bayes-classifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chen0040","download_url":"https://codeload.github.com/chen0040/java-naive-bayes-classifier/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229964387,"owners_count":18152034,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["classification","java","naive-bayes-classifier"],"created_at":"2024-12-16T13:15:54.747Z","updated_at":"2026-05-22T08:04:00.356Z","avatar_url":"https://github.com/chen0040.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# java-naive-bayes-classifier\n\nPackage provides java implementation of naive bayes classifier (NBC)\n\n[![Build Status](https://travis-ci.org/chen0040/java-naive-bayes-classifier.svg?branch=master)](https://travis-ci.org/chen0040/java-naive-bayes-classifier) [![Coverage Status](https://coveralls.io/repos/github/chen0040/java-naive-bayes-classifier/badge.svg?branch=master)](https://coveralls.io/github/chen0040/java-naive-bayes-classifier?branch=master) \n\n\n# Features\n\n* Handle both numerical and categorical inputs\n\n# Install\n\nAdd the following dependency to your POM file\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.github.chen0040\u003c/groupId\u003e\n  \u003cartifactId\u003ejava-naive-bayes-classifier\u003c/artifactId\u003e\n  \u003cversion\u003e1.0.1\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n# Usage\n\nTo train the NBC:\n\n```java\nnbc.fit(trainingData);\n```\n\nTo use NBC for classification:\n\n```java\nString predicted = nbc.classify(dataRow);\n```\n\nThe trainingData object is an instance of data frame consisting of data rows (Please refers to this [link](https://github.com/chen0040/java-data-frame) to find out how to store data into a data frame)\n\nThe sample code below shows how to use NBC to solves the classification problem \"heart_scale\".\n\n```java\nInputStream inputStream = new FileInputStream(\"heart_scale\");\n\nDataFrame dataFrame = DataQuery.libsvm().from(inputStream).build();\n\n\ndataFrame.unlock();\nfor(int i=0; i \u003c dataFrame.rowCount(); ++i){\n DataRow row = dataFrame.row(i);\n row.setCategoricalTargetCell(\"category-label\", \"\" + row.target());\n}\ndataFrame.lock();\n\nNBC svc = new NBC();\nsvc.fit(dataFrame);\n\nfor(int i = 0; i \u003c dataFrame.rowCount(); ++i){\n DataRow row = dataFrame.row(i);\n String predicted_label = svc.classify(row);\n System.out.println(\"predicted: \"+predicted_label+\"\\texpected: \"+row.categoricalTarget());\n}\n```\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchen0040%2Fjava-naive-bayes-classifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchen0040%2Fjava-naive-bayes-classifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchen0040%2Fjava-naive-bayes-classifier/lists"}