Skip to main content

A scikit-learn style transformer that scales numeric variables to normal distributions

Project description

Gauss Rank Scaler

A scikit-learn style transformer that scales numeric variables to normal distributions.

Input normalization for neural networks is very important. Gauss Rank is an effective algorithm for converting numeric variable distributions to normals. It is based on rank transformation. The first step is to assign a spacing between -1 and 1 to the sorted features, then apply the inverse of error function erfinv to make it look like a Gaussian.

This generally works much better than Standard or Min Max Scaler.

Important Links

Usage

Gauss Rank Scaler is a fully compatible sklearn transformer that can be used in pipelines or existing scripts. Supported input formats include numpy arrays and pandas dataframes. All columns passed to the transformer are properly scaled.

Example

from gauss_rank_scaler import GaussRankScaler
import pandas as pd
from sklearn.datasets import load_boston
%matplotlib inline

# prepare some data
bunch = load_boston()
df_X_train = pd.DataFrame(bunch.data[:250], columns=bunch.feature_names)
df_X_test = pd.DataFrame(bunch.data[250:], columns=bunch.feature_names)

# plot histograms of two numeric variables
_ = df_X_train[['CRIM', 'DIS']].hist()

# scale the numeric variables with Gauss Rank Scaler
scaler = GaussRankScaler()
df_X_new_train = scaler.fit_transform(df_X_train[['CRIM', 'DIS']])

# plot histograms of the scaled variables
_ = pd.DataFrame(df_X_new_train, columns=['CRIM', 'DIS']).hist()

# scale test dataset with the fitted scaler
df_X_new_test = scaler.transform(df_X_test[['CRIM', 'DIS']])

This is a direct copy of the repositopry by Aldente06030 packaged for pip

(https://github.com/aldente0630/gauss-rank-scaler)

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

gauss-rank-scaler-0.0.3.tar.gz (5.3 kB view details)

Uploaded Source

File details

Details for the file gauss-rank-scaler-0.0.3.tar.gz.

File metadata

  • Download URL: gauss-rank-scaler-0.0.3.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.12

File hashes

Hashes for gauss-rank-scaler-0.0.3.tar.gz
Algorithm Hash digest
SHA256 770e188e34d6f1635c991c77b7605cccfea4418120057b462a81285840d6ab72
MD5 e82bb627545dc9415040ac1ce62502a0
BLAKE2b-256 c4c30edef4e799d340e9a763e53992f2af135dae68b39883658e40c69ebe4348

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 Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page