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 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 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.2.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

streamlit_controllerDF-0.1.2-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file streamlit_controllerDF-0.1.2.tar.gz.

File metadata

  • Download URL: streamlit_controllerDF-0.1.2.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for streamlit_controllerDF-0.1.2.tar.gz
Algorithm Hash digest
SHA256 70a6d2faeacc8289e257358a3587d5402ce1291667efbded960db3ab34fb2b8b
MD5 45dd095730f694eb7b6670e5acc55098
BLAKE2b-256 b9425be75fc54f1320590da113bb5819269f910db87436555a5abbd5fc8ee726

See more details on using hashes here.

File details

Details for the file streamlit_controllerDF-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for streamlit_controllerDF-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 304e702bf322448a2795e4930ad784ea6079f7cf2d407803877ad0812d616f70
MD5 d05a1ef6b6ae8a97bc4a1395bf09a760
BLAKE2b-256 1af33326213f4550c143073ca8898a4810617d280f589fd802d787221452402e

See more details on using hashes here.

Supported by

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