# vpselector
The Visual Pandas Selector is a tool to visually select portions of numeric time-series data from a pandas dataframe. The tool is intended to provide an fast interactive way for manual data selection, as can be very useful in for example machine learning, regression or system identification.
Easily configure the tool to plot dataframe columns in vertically stacked subplots and view data distributions with the included histogram feature. With a simple click and drag, you can then select horizontal data windows, and let the tool automatically combine them into a new dataframe.
The user can subsequentially select different horizontal data windows via click and drag and he tool then automatically combines the visually selected sections into a new dataframe.
![ezgif com-gif-maker(1)](https://github.com/manumerous/visual-pandas-curator/assets/18735094/b5ebbb99-d2f7-4901-b101-cbeed6c230aa)
## Install
Install the package using:
```bash
pip install vpselector
```
## Use in your project
Then simply import it using `import vpselector`. Then simply use:
- If your project does not contain a pyqt application: `vpselector.select_visual_data(data : pd.DataFrame, plot_config : dict)`
- To add the vpselector to an existing pyqt application: `vpselector.select_visual_data_in_pyqt_app(data : pd.DataFrame, plot_config : dict, pyqt_app)`
## Run the Example
```bash
python3 vpselector_example.py
```
#### Use the Tool
- Left click with your mouse and drag to define the desired horizontal window of the data to be selected.
- The current selection distribution is now visualized in the histogram plot on the right.
- Confirm or cancel data selection.
- The already selected data is now marked by a grey span in the plot on the left.
- The plot on the right contains now the histogram of all selected data.
- repeat as many times as needed.
- Once you could select all desired horizontal data windows click "Done selecting"
Raw data
{
"_id": null,
"home_page": "",
"name": "vpselector",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "Manuel Yves Galliker <manuel@galliker.tech>",
"keywords": "python,dataframe,pandas,visualization,data selection,time-series data,data tools,data science,data-driven engineering,machine learning,system identification",
"author": "Manuel Yves Galliker",
"author_email": "manuel@galliker.tech",
"download_url": "https://files.pythonhosted.org/packages/8a/20/aea42d15c30ed25cfde29356dc7fbc61c4dce0f92b85025a251563d93ef2/vpselector-1.0.2.tar.gz",
"platform": null,
"description": "# vpselector\n\nThe Visual Pandas Selector is a tool to visually select portions of numeric time-series data from a pandas dataframe. The tool is intended to provide an fast interactive way for manual data selection, as can be very useful in for example machine learning, regression or system identification.\n\nEasily configure the tool to plot dataframe columns in vertically stacked subplots and view data distributions with the included histogram feature. With a simple click and drag, you can then select horizontal data windows, and let the tool automatically combine them into a new dataframe.\n\nThe user can subsequentially select different horizontal data windows via click and drag and he tool then automatically combines the visually selected sections into a new dataframe.\n\n![ezgif com-gif-maker(1)](https://github.com/manumerous/visual-pandas-curator/assets/18735094/b5ebbb99-d2f7-4901-b101-cbeed6c230aa)\n\n\n## Install\n\nInstall the package using:\n\n```bash\npip install vpselector\n```\n\n## Use in your project\n\nThen simply import it using `import vpselector`. Then simply use:\n\n- If your project does not contain a pyqt application: `vpselector.select_visual_data(data : pd.DataFrame, plot_config : dict)` \n\n- To add the vpselector to an existing pyqt application: `vpselector.select_visual_data_in_pyqt_app(data : pd.DataFrame, plot_config : dict, pyqt_app)` \n\n\n## Run the Example \n\n```bash\npython3 vpselector_example.py\n```\n\n#### Use the Tool\n\n- Left click with your mouse and drag to define the desired horizontal window of the data to be selected.\n - The current selection distribution is now visualized in the histogram plot on the right.\n- Confirm or cancel data selection.\n - The already selected data is now marked by a grey span in the plot on the left.\n - The plot on the right contains now the histogram of all selected data.\n- repeat as many times as needed.\n- Once you could select all desired horizontal data windows click \"Done selecting\"\n\n",
"bugtrack_url": null,
"license": "",
"summary": "Visualize and interactively select time-series data from a pandas DataFrame.",
"version": "1.0.2",
"project_urls": {
"repository": "https://github.com/manumerous/vpselector"
},
"split_keywords": [
"python",
"dataframe",
"pandas",
"visualization",
"data selection",
"time-series data",
"data tools",
"data science",
"data-driven engineering",
"machine learning",
"system identification"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6ded8e239dfd3bfe60875c76d1964d3fd7fab05c92904a1fce8408d01fcaf327",
"md5": "583ecb5f53ec6bb6f52848b1d6967f84",
"sha256": "b13410d2b2a77d215bf9364e0550a385f329df76ac661574628a7efd1dc74219"
},
"downloads": -1,
"filename": "vpselector-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "583ecb5f53ec6bb6f52848b1d6967f84",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 12592,
"upload_time": "2023-09-20T18:28:15",
"upload_time_iso_8601": "2023-09-20T18:28:15.304758Z",
"url": "https://files.pythonhosted.org/packages/6d/ed/8e239dfd3bfe60875c76d1964d3fd7fab05c92904a1fce8408d01fcaf327/vpselector-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8a20aea42d15c30ed25cfde29356dc7fbc61c4dce0f92b85025a251563d93ef2",
"md5": "d107ad27866bde5c6a037906d94918cd",
"sha256": "18f9e3408cd33309e9c486d26986b7bc049cffed99312e364422a60fc5671cad"
},
"downloads": -1,
"filename": "vpselector-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "d107ad27866bde5c6a037906d94918cd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 820777,
"upload_time": "2023-09-20T18:28:17",
"upload_time_iso_8601": "2023-09-20T18:28:17.913809Z",
"url": "https://files.pythonhosted.org/packages/8a/20/aea42d15c30ed25cfde29356dc7fbc61c4dce0f92b85025a251563d93ef2/vpselector-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-09-20 18:28:17",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "manumerous",
"github_project": "vpselector",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "vpselector"
}