{"id":15063953,"url":"https://github.com/nixhantb/neuroflash","last_synced_at":"2026-01-02T18:05:11.861Z","repository":{"id":255537506,"uuid":"852363941","full_name":"nixhantb/neuroflash","owner":"nixhantb","description":"A library for Data manipulation , Data Engineering and machine learning usecases with faster performance","archived":false,"fork":false,"pushed_at":"2024-09-16T13:23:58.000Z","size":402,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-22T19:11:47.573Z","etag":null,"topics":["deep-learning","golang","google","library","machine-learning","sklearn"],"latest_commit_sha":null,"homepage":"","language":"Go","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/nixhantb.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-04T17:19:17.000Z","updated_at":"2024-09-16T13:24:01.000Z","dependencies_parsed_at":"2024-09-16T14:50:43.259Z","dependency_job_id":null,"html_url":"https://github.com/nixhantb/neuroflash","commit_stats":null,"previous_names":["nixhantb/go-neuroflash","nixhantb/neuroflash"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nixhantb%2Fneuroflash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nixhantb%2Fneuroflash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nixhantb%2Fneuroflash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nixhantb%2Fneuroflash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nixhantb","download_url":"https://codeload.github.com/nixhantb/neuroflash/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243835942,"owners_count":20355611,"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":["deep-learning","golang","google","library","machine-learning","sklearn"],"created_at":"2024-09-25T00:09:14.989Z","updated_at":"2026-01-02T18:05:11.764Z","avatar_url":"https://github.com/nixhantb.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# NeuroFlash\n\nA library for machine learning , data science and utilities, including algorithms for regression, classification, clustering, and more. This library is designed to be modular and extendable for various machine learning tasks.\n\n![logo](/docs/assets/neuroflash.jpg)\n\n## Features\n\n- **Algorithms**: Implementations of popular ML algorithms including linear regression, logistic regression, decision trees, KNN, k-means, and PCA.\n- **Preprocessing**: Tools for data preprocessing including scaling, normalization, and handling missing values.\n- **Evaluation**: Metrics for evaluating model performance such as accuracy, precision, recall, and F1-score.\n- **Utilities**: Mathematical and matrix operations essential for ML tasks.\n\n## Data Manipulation with NeuroFlash\n\nNeuroFlash offers efficient data manipulation functions to clean and preprocess your data before feeding it into machine learning models. By using asynchronous operations, you can achieve faster data processing, especially when dealing with large datasets.\n\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\t\"time\"\n\n\tcsvparser \"neuroflash/src/data\"\n)\n\nfunc main() {\n\tstart := time.Now()\n\n\tparser := csvparser.CSVParser{Filepath: \"test_data.csv\"}\n\n\terr := parser.ParseCSV()\n\tif err != nil {\n\t\tlog.Fatal(\"Error parsing CSV file:\", err)\n\t}\n\n\tstat, err := parser.Describe()\n\tif err != nil {\n\t\tlog.Fatal(\"Error describing CSV file:\", err)\n\t}\n\n\tfmt.Println(\"CSV Description:\")\n\tfor _, header := range stat[0] {\n\t\tfmt.Printf(\"%-15s\", header)\n\t}\n\tfmt.Println()\n\n\tfor i := 1; i \u003c len(stat); i++ {\n\t\tfor _, value := range stat[i] {\n\t\t\tfmt.Printf(\"%-15s\", value)\n\t\t}\n\t\tfmt.Println()\n\t}\n\n\tparser.Top(10)\n\tfmt.Println(\"\\nTop 10 rows:\")\n\tfor _, row := range parser.Data {\n\t\tfmt.Println(row)\n\t}\n\n\tparser.Bottom(5)\n\tfmt.Println(\"\\nBottom 5 rows:\")\n\tfor _, row := range parser.Data {\n\t\tfmt.Println(row)\n\t}\n\n\tparser.DropCol([]string{\"Country\"})\n\tfmt.Println(\"\\nData after dropping column:\")\n\tfor _, row := range parser.Data {\n\t\tfmt.Println(row)\n\t}\n\n\trecords := parser.FillMissing(\"default_value\")\n\tfmt.Println(\"\\nData after filling missing values:\")\n\tfor _, row := range records {\n\t\tfmt.Println(row)\n\t}\n\trecords = parser.DeleteNull(\"row\")\n\n\tfmt.Println(\"\\nData after deleting null rows:\")\n\tfor _, row := range records {\n\t\tfmt.Println(row)\n\t}\n\n\tnullFlags, err := parser.IsNull()\n\tif err != nil {\n\t\tlog.Fatal(\"Error finding null flags:\", err)\n\t}\n\tnullCount := nullFlags.Sum()\n\tfmt.Printf(\"\\nNumber of null values: %d\\n\", nullCount)\n\n\telapsed := time.Since(start)\n\n\tfmt.Printf(\"\\nTime taken: %.6f seconds\\n\", elapsed.Seconds())\n}\n\n\nCSV Description:\nColumn         Count          Sum            Mean           Min            Max            Q1(25%)        Q2(50%)        Q3(75%)        Variance       Std Deviation  \nID             100            5050.00        50.50          1.00           100.00         26.00          50.50          76.00          833.25         28.87          \nAge            100            2931.00        29.31          22.00          35.00          27.00          29.00          32.00          10.51          3.24           \nScore          100            8532.20        85.32          75.50          92.50          82.30          85.75          89.00          19.04          4.36      \n\n\nTop 10 rows:\n[ID Name Age Country Score]\n[1 Frank 29 Australia 90.2]\n[2 Grace 34 Canada 88.0]\n[3 Hannah 26 USA 75.5]\n[4 Ivy 31 UK 82.3]\n[5 Jack 22 Germany 85.0]\n[6 Kevin 28 India 79.5]\n[7 Liam 30 Australia 92.1]\n[8 Mia 27 Canada 84.0]\n[9 Nina 32 USA 87.5]\n[10 Owen 24 UK 81.0]\n\nBottom 5 rows:\n[ID Name Age Country Score]\n[6 Kevin 28 India 79.5]\n[7 Liam 30 Australia 92.1]\n[8 Mia 27 Canada 84.0]\n[9 Nina 32 USA 87.5]\n[10 Owen 24 UK 81.0]\n\nData after dropping column:\n[ID Name Age Score]\n[6 Kevin 28 79.5]\n[7 Liam 30 92.1]\n[8 Mia 27 84.0]\n[9 Nina 32 87.5]\n[10 Owen 24 81.0]\n\nData after filling missing values:\n[ID Name Age Score]\n[6 Kevin 28 79.5]\n[7 Liam 30 92.1]\n[8 Mia 27 84.0]\n[9 Nina 32 87.5]\n[10 Owen 24 81.0]\n\nData after deleting null rows:\n[ID Name Age Score]\n[6 Kevin 28 79.5]\n[7 Liam 30 92.1]\n[8 Mia 27 84.0]\n[9 Nina 32 87.5]\n[10 Owen 24 81.0]\n\nNumber of null values: 0\n\nTime taken: 0.000685 seconds\n\n\n```\n\n### Contributing\n\nContributions are welcome! If you have suggestions or find issues, please submit a pull request or create an issue on our GitHub repository.\n\n### License\n\nThis project is licensed under the MIT License \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnixhantb%2Fneuroflash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnixhantb%2Fneuroflash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnixhantb%2Fneuroflash/lists"}