scorecard
Project description
LAPRAS
Lapras is developed to facilitate the dichotomy model development work.
Install
via pip
pip install lapras
via source code
python setup.py install
Usage
import pandas as pd
import lapras
# read data file as pandas dataframe
df = pd.read_csv('data/demo.csv',encoding="utf-8")
to_drop = ['id']
target = 'bad'
# feature selection
lapras.detect(df.drop(to_drop,axis=1))
lapras.quality(df.drop(to_drop,axis=1),target = target)
train_selected, dropped = lapras.select(df.drop(to_drop,axis=1),target = target, empty = 0.9, \
iv = 0.02, corr = 0.7, vif=False, return_drop=True, exclude=[])
# bins method = ['dt', 'kmeans', 'step', 'quantile', 'mono']
c = lapras.Combiner()
c.fit(train_selected, y = target, method = 'mono', min_samples = 0.05,n_bins=8)
c.export()
# c.load({}) # export the default bins and change it as you wish, finally load it back and take effects.
# bins visualization
cols = train_selected.columns
for col in cols:
if col != target:
print(lapras.bin_stats(c.transform(train_selected[[col, target]], labels=True), col=col, target=target))
lapras.bin_plot(c.transform(train_selected[[col,target]], labels=True), col=col, target=target)
# transfer to WOE
transfer = lapras.WOETransformer()
train_woe = transfer.fit_transform(c.transform(train_selected), train_selected[target], exclude=[target])
# stepwise method to choose features
final_data = lapras.stepwise(train_woe,target = target, estimator='ols', direction = 'both', criterion = 'aic', exclude = [])
# ScoreCard fit, predict and export
card = lapras.ScoreCard(
combiner = c,
transfer = transfer,
)
col = list(final_data.drop([target],axis=1).columns)
card.fit(final_data[col], final_data[target])
final_data['score'] = card.predict(final_data[col])
final_data['prob'] = card.predict_prob(final_data[col])
card.export()
# performance
lapras.perform(final_data['prob'],final_data[target])
lapras.score_plot(final_data,score='score', target=target)
print(lapras.LIFT(final_data['prob'],final_data[target]))
print(lapras.KS_bucket(final_data['score'], final_data[target], bucket=10, method = 'quantile'))
Documents
A simple API.
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
lapras-0.0.15.tar.gz
(34.7 kB
view hashes)
Built Distribution
Close
Hashes for lapras-0.0.15-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01b1e3b14e7114fb3c2d84c3d54a84135a8a6c55dd08aaaa5582ddb86fe5497e |
|
MD5 | 90a693d9fd49f11f992827982a5251b1 |
|
BLAKE2b-256 | 3ac57faeef68fb95c6be6b6eafdf5614af010de354c037eda7aab36ca271d703 |