Skip to main content

A solid base for controlling your data frame, getting quick metrics, and data visualizations using streamlit, pandas, numpy and matplotlib.

Project description

ctrldf

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
  • Rename the file to your projects name
$ 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 pd

mydf = 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 pd

mydf = 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 limitation

Thank you for viewing my project sincerely

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

streamlit_controllerDF-0.1.1.tar.gz (6.0 kB view hashes)

Uploaded Source

Built Distribution

streamlit_controllerDF-0.1.1-py3-none-any.whl (5.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page