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.3.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.3-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: streamlit_controllerDF-0.1.3.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.3.tar.gz
Algorithm Hash digest
SHA256 f9444c786772b60cc812ee1ab6f724edaaf05fc827a3d511137c3a8270f8520c
MD5 10a485e46681dbae2b0a9ddc77dfd41a
BLAKE2b-256 b355e06751500856d60f302762e1bd0286fc123ecb6a40f004f8bcbea38fd459

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for streamlit_controllerDF-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2bda39ed252db5bf0f6900c6ca1012387ca70c4aff67ab16766e09423cc73d99
MD5 fd05c9cfa9fb799208e78f6cd3e37eea
BLAKE2b-256 3cf54605c09a2088c1750cdf4a319df17e5b0bfdf4d35c21e470d466a8a6765a

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