Skip to main content

Customized data preprocessing functions for frequent tasks.

Project description

klib

Flake8 & PyTest Language Downloads Last Commit Quality Gate Status Scrutinizer

klib is a Python library for importing, cleaning, analyzing and preprocessing data. Future versions will include model creation and optimization to provide an end-to-end solution.

Installation

Use the package manager pip to install klib.

PyPI Version

pip install klib
pip install --upgrade klib

Alternatively, to install this package with conda run:

Conda Version

conda install -c conda-forge klib

Usage

import klib

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

klib.clean # functions for cleaning datasets
- klib.data_cleaning() # performs datacleaning (drop duplicates & empty rows/columns, adjust dtypes,...) on a dataset
- klib.convert_datatypes() # converts existing to more efficient dtypes, also called inside ".data_cleaning()"
- klib.drop_missing() # drops missing values, also called in ".data_cleaning()"
- klib.mv_col_handling() # drops features with a high ratio of missing values based on their informational content
- klib.pool_duplicate_subsets() # pools a subset of columns based on duplicate values with minimal loss of information

klib.preprocess # functions for data preprocessing (feature selection, scaling, ...)
- klib.train_dev_test_split() # splits a dataset and a label into train, optionally dev and test sets
- klib.feature_selection_pipe() # provides common operations for feature selection
- klib.num_pipe() # provides common operations for preprocessing of numerical data
- klib.cat_pipe() # provides common operations for preprocessing of categorical data
- klib.preprocess.ColumnSelector() # selects numerical or categorical columns, ideal for a Feature Union or Pipeline
- klib.preprocess.PipeInfo() # prints out the shape of the data at the specified step of a Pipeline

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.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

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-0.0.89.tar.gz (24.8 kB view hashes)

Uploaded Source

Built Distribution

klib-0.0.89-py3-none-any.whl (26.3 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