Skip to main content

Common data preprocessing and visualisation functions.

Project description

klib Header

Flake8 & PyTest Language Last Commit Quality Gate Status Scrutinizer codecov

klib is a Python library for importing, cleaning, analyzing and preprocessing data. Explanations on key functionalities can be found on Medium / TowardsDataScience and in the examples section. Additionally, there are great introductions and overviews of the functionality on PythonBytes or on YouTube (Data Professor).

Installation

Use the package manager pip to install klib.

PyPI Version Downloads

pip install -U klib

Alternatively, to install this package with conda run:

Conda Version Conda Downloads

conda install -c conda-forge klib

Usage

import klib
import pandas as pd

df = pd.DataFrame(data)

# klib.describe - functions for visualizing datasets
- klib.cat_plot(df) # returns a visualization of the number and frequency of categorical features
- klib.corr_mat(df) # returns a color-encoded correlation matrix
- klib.corr_plot(df) # returns a color-encoded heatmap, ideal for correlations
- klib.corr_interactive_plot(df, split="neg").show() # returns an interactive correlation plot using plotly
- klib.dist_plot(df) # returns a distribution plot for every numeric feature
- klib.missingval_plot(df) # returns a figure containing information about missing values

# klib.clean - functions for cleaning datasets
- klib.data_cleaning(df) # performs datacleaning (drop duplicates & empty rows/cols, adjust dtypes,...)
- klib.clean_column_names(df) # cleans and standardizes column names, also called inside data_cleaning()
- klib.convert_datatypes(df) # converts existing to more efficient dtypes, also called inside data_cleaning()
- klib.drop_missing(df) # drops missing values, also called in data_cleaning()
- klib.mv_col_handling(df) # drops features with high ratio of missing vals based on informational content
- klib.pool_duplicate_subsets(df) # pools subset of cols based on duplicates with min. loss of information

Examples

Find all available examples as well as applications of the functions in klib.clean() with detailed descriptions here.

klib.missingval_plot(df) # default representation of missing values in a DataFrame, plenty of settings are available

Missingvalue Plot Example

klib.corr_plot(df, split='pos') # displaying only positive correlations, other settings include threshold, cmap...
klib.corr_plot(df, split='neg') # displaying only negative correlations

Corr Plot Example

klib.corr_plot(df, target='wine') # default representation of correlations with the feature column

Target Corr Plot Example

klib.corr_interactive_plot(df, split="neg").show()

# The interactive plot has the same parameters as the corr_plot, but with additional Plotly heatmap graph object kwargs.
klib.corr_interactive_plot(df, split="neg", zmax=0)

Interactive Corr Plot Simple Example

Interactive Corr Plot with zmax kwarg Example

#Since corr_interactive_plot returns a Graph Object Figure, it supports the update_layout chain method.
klib.corr_interactive_plot(wine, split="neg").update_layout(template="simple_white")

Interactive Corr Plot Chained Example

klib.dist_plot(df) # default representation of a distribution plot, other settings include fill_range, histogram, ...

Dist Plot Example

klib.cat_plot(data, top=4, bottom=4) # representation of the 4 most & least common values in each categorical column

Cat Plot Example

Further examples, as well as applications of the functions in klib.clean() can be found here.

Contributing

Open in Visual Studio Code

Pull requests and ideas, especially for further functions are welcome. For major changes or feedback, please open an issue first to discuss what you would like to change.

License

MIT

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

klib-1.3.2.tar.gz (40.1 MB view details)

Uploaded Source

Built Distribution

klib-1.3.2-py3-none-any.whl (23.0 kB view details)

Uploaded Python 3

File details

Details for the file klib-1.3.2.tar.gz.

File metadata

  • Download URL: klib-1.3.2.tar.gz
  • Upload date:
  • Size: 40.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.27

File hashes

Hashes for klib-1.3.2.tar.gz
Algorithm Hash digest
SHA256 05fc49a5b6c688a060e6d2dd2dc9c62a9dd685dd00f550f95a9146f57b26800a
MD5 4c456c7eddc2e18cd0a88e0fb176d4e4
BLAKE2b-256 0a15032fd2bb664ea3077402183d2fef5ad3d16e7cbae9f9c110fa2ba05421ce

See more details on using hashes here.

File details

Details for the file klib-1.3.2-py3-none-any.whl.

File metadata

  • Download URL: klib-1.3.2-py3-none-any.whl
  • Upload date:
  • Size: 23.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.27

File hashes

Hashes for klib-1.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 44428d9bd63bcfd08789bcd3dea18f984691660623e7d37ca8eac32c5fcb63f8
MD5 621df6de82c7942f896db0f914898b03
BLAKE2b-256 76207432265ee68ce3b8908a7ad892a61652ed95dfdc5e91b2e9d8becb5e348b

See more details on using hashes here.

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