Skip to content

oneoffcoder/py-pair

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jun 24, 2022
79e6e75 · Jun 24, 2022
Nov 17, 2020
Sep 30, 2021
Nov 20, 2020
Sep 30, 2021
Sep 30, 2021
Nov 17, 2020
Jun 24, 2022
Sep 30, 2021
Nov 26, 2020
Nov 11, 2020
Dec 7, 2020
Sep 30, 2021
Nov 11, 2020
Sep 30, 2021
Nov 18, 2020
Nov 17, 2020
Sep 30, 2021
Sep 30, 2021
Sep 30, 2021
Sep 30, 2021

Repository files navigation

pypair logo

PyPair

PyPair is a statistical library to compute pairwise association between any two variables. In general, statistical variable types are viewed as categorical or continuous. Categorical variables have no inherit order to their values, while continuous variables do. This API has over 130 association measures implemented for any combination of categorical and/or continuous variables.

To install.

pip install pypair

Additional links.

Here's a short and sweet snippet for using the API against a dataframe that stores strictly binary data. The Pandas DataFrame.corr() method no longer processes non-numeric fields!

from pypair.association import binary_binary
from pypair.util import corr

jaccard = lambda a, b: binary_binary(a, b, measure='jaccard')
tanimoto = lambda a, b: binary_binary(a, b, measure='tanimoto_i')

df = get_a_pandas_binary_dataframe()

jaccard_corr = corr(df, jaccard)
tanimoto_corr = corr(df, tanimoto)

print(jaccard_corr)
print('-' * 15)
print(tanimoto_corr)

Another way to get started with PyPair is to use the convenience methods whose names indicate the variable pair types.

from pypair.association import binary_binary, categorical_categorical, \
    binary_continuous, concordance, categorical_continuous, continuous_continuous, confusion, agreement

# assume a and b are the appropriate iterables of values for 2 variables
jaccard = binary_binary(a, b, measure='jaccard')
acc = confusion(a, b, measure='acc')
phi = categorical_categorical(a, b, measure='phi')
kappa = agreement(a, b, measure='cohen_k')
biserial = binary_continuous(a, b, measure='biserial')
tau = concordance(a, b, measure='kendall_tau')
eta = categorical_continuous(a, b, measure='eta')
pearson = continuous_continuous(a, b, measure='pearson')

Software Copyright

Copyright 2020 One-Off Coder

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Book Copyright

Copyright 2020 One-Off Coder

This work is licensed under a Creative Commons Attribution 4.0 International License by One-Off Coder.

Creative Commons Attribution 4.0 International License

Art Copyright

Copyright 2020 Daytchia Vang

Citation

@misc{oneoffcoder_pypair_2020,
title={PyPair, A Statistical API for Bivariate Association Measures},
url={https://github.com/oneoffcoder/py-pair},
author={Jee Vang},
year={2020},
month={Nov}}

Sponsor, Love