{"id":19867778,"url":"https://github.com/michaelhopwood/pvpolyfit","last_synced_at":"2025-05-02T07:31:01.252Z","repository":{"id":57455618,"uuid":"202227035","full_name":"MichaelHopwood/PVPolyfit","owner":"MichaelHopwood","description":"A high-resolution multiple non-linear regression algorithm used to analyze PV output with a few inputs","archived":false,"fork":false,"pushed_at":"2021-04-26T22:26:50.000Z","size":246,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-11T13:32:05.808Z","etag":null,"topics":["algorithm","regression","resolution-regression"],"latest_commit_sha":null,"homepage":"","language":"Python","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/MichaelHopwood.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":"2019-08-13T21:34:30.000Z","updated_at":"2024-08-28T11:32:32.000Z","dependencies_parsed_at":"2022-09-05T18:11:59.313Z","dependency_job_id":null,"html_url":"https://github.com/MichaelHopwood/PVPolyfit","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MichaelHopwood%2FPVPolyfit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MichaelHopwood%2FPVPolyfit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MichaelHopwood%2FPVPolyfit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MichaelHopwood%2FPVPolyfit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MichaelHopwood","download_url":"https://codeload.github.com/MichaelHopwood/PVPolyfit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224300501,"owners_count":17288738,"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":["algorithm","regression","resolution-regression"],"created_at":"2024-11-12T15:30:31.426Z","updated_at":"2024-11-12T15:32:01.151Z","avatar_url":"https://github.com/MichaelHopwood.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![PyPI version](https://badge.fury.io/py/PVPolyfit.svg)](https://badge.fury.io/for/py/PVPolyfit)[![Downloads](https://pepy.tech/badge/pvpolyfit)](https://pepy.tech/project/pvpolyfit)[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n# PVPolyfit\n\nA one-lined function call for a high-resolution regression on PV Output\n\n### Overview\n\nPVPolyfit provides a purely mathematical approach towards regression on a physical solar field. With PVPolyfit, you can regress on DC Power using only Irradiance and Ambient Temperature. Further research will need to be conducted to find other applications of this algorithm.\n\nThe PVPolyfit algorithm is:\n* `FAST` - simulating months of data in minutes\n\n* `ROBUST` - working on a vast variety of datasets and levels - module, string, inverter\n\n* `MALLEABLE` - allowing any number of covariates\n\n* `ACCURATE` - generating one percent error or less\n\n* `USER FRIENDLY` - requiring only one line of code\n\n### Getting it\nTo download PVPolyfit, either fork this github repo or simply call the following command in your command prompt.\n```sh\n$ pip install PVPolyfit\n```\n\n### Using it\n\nSimply, call the following function located in PVPolyit.core\n\n```py\n\u003e\u003e\u003e from PVPolyfit.core import pvpolyfit\n\u003e\u003e\u003e modelled_Y, days_rmses = pvpolyfit(train_df, test_df, Y_tag, xs, I_tag, ghi_tag, cs_tag, \n\t      highest_num_clusters, highest_degree, kernel_type, Y_high_filter, min_count_per_day, \n              plot_graph = True, graph_type = 'regression', print_info = True)\n```\n\nReference `example/example.py` for a demonstration and explanation on a small amount of provided data.\n\n### Performance\n\nEach color corresponds with a cluster, also known as a `type of day`.\n\n![PVPolyfit regression](https://media.discordapp.net/attachments/210945856294223872/610932223952158723/unknown.png)\n\n### Acknowledgements\n![Emblems](https://media.discordapp.net/attachments/210945856294223872/610937089172963371/944bef9cdaef086d8659b5b825dd22c0.png)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaelhopwood%2Fpvpolyfit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmichaelhopwood%2Fpvpolyfit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaelhopwood%2Fpvpolyfit/lists"}