Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joshjetson/scdf
Manipulate your data frame with Controller DF
https://github.com/joshjetson/scdf
Last synced: about 1 hour ago
JSON representation
Manipulate your data frame with Controller DF
- Host: GitHub
- URL: https://github.com/joshjetson/scdf
- Owner: joshjetson
- Created: 2023-04-28T06:56:19.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-05-01T18:50:22.000Z (over 1 year ago)
- Last Synced: 2025-01-03T14:24:38.613Z (about 1 hour ago)
- Language: Python
- Size: 12.6 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Documentation ·
Report a Bug ·
Demo .
Request Feature ·
Send a Pull Request## Controller DF
[]()
A python library which creates a simple and easy to use data frame controller.
Using this library, along with streamlit and minimal (*included*) code, anyone can spin up a web app which allows you to control, manipulate and display a data set quickly and easily.## Demo
- Quick column metrics
- Rapid column filter
- Instant type based column widgets
## Installation
```
$ pip install streamlit-controllerDF
```## Getting started
After you pip install the module
**Batteries included method:**
Quick start
>
> - `Copy the included test_code.py contents`
> - test_code here click me
> - `Create a new python file and paste the contents of test_code.py into it`
> - `Name the file something you like and then:`
> ~~~
> $ streamlit run your_project.py
> ~~~
> - `Drag and drop csv file`
> - `Enjoy!`**Batteries excluded method:**
Module only
> ~~~
> import streamlit_controllerDF as sc
> ~~~
> - `see documentation for usage`## Documentation
**class streamlit_controllerDF.Widgets(dataframe, omit_columns=list())**
> Parameters:
>> - dataframe: A pandas data frame
>>> - *Two-dimensional, size-mutable, potentially heterogeneous tabular data.*
>> - omit_columns: A list of column names to be excluded
>>> - *The column names must be exact*#### Example
```
import streamlit_controllerDF as sc
import pandas as pdmydf = pd.read_csv('mycsv.csv')
ctrldf = sc.Widgets(mydf,omit_columns=['Engine_Size', 'Year'])
```**method streamlit_controllerDF.Widgets.metrics()**
> Parameters:
>> - *None*#### Example
```
import streamlit_controllerDF as sc
import pandas as pdmydf = pd.read_csv('mycsv.csv')
ctrldf = sc.Widgets(mydf,omit_columns=['Engine_Size', 'Year'])
ctrldf.metrics()
```## Limitations
- *This library is currently limited to support only files under 20MB*
- *Due to browser limitations only 12000 rows of data can be viewed at a time*## To Do
*This library is the base of a much larger project.*
- [ ] Create a chart method which will populate various charts automatically
- [ ] Create a model method which will populate various ML models automatically
- [ ] Add support for automated api data import
- [ ] Add support for relational and non relational data bases
- [ ] Add support for automated queries
- [ ] Add support for big data
- [ ] Create large file size detection and implement chunking automatically
- [ ] Migrate from Pandas to Dask
- [ ] After Dask migration remove file size limitationThank you for viewing my project
sincerely