Register Synonyms
Project description
kwix
Developer Guide
Setup
# create conda environment
$ mamba env create -f env.yml
# update conda environment
$ mamba env update -n kwix --file env.yml
Install
pip install -e .
# install from pypi
pip install kwix
nbdev
# activate conda environment
$ conda activate kwix
# make sure the kwix package is installed in development mode
$ pip install -e .
# make changes under nbs/ directory
# ...
# compile to have changes apply to the kwix package
$ nbdev_prepare
Publishing
# publish to pypi
$ nbdev_pypi
# publish to conda
$ nbdev_conda --build_args '-c conda-forge'
$ nbdev_conda --mambabuild --build_args '-c conda-forge -c dsm-72'
Usage
Installation
Install latest from the GitHub repository:
$ pip install git+https://github.com/dsm-72/kwix.git
or from conda
$ conda install -c dsm-72 kwix
or from pypi
$ pip install kwix
Documentation
Documentation can be found hosted on GitHub repository pages. Additionally you can find package manager specific guidelines on conda and pypi respectively.
Toy Inheritance
@dataclass
class Foo(KWix):
_: KW_ONLY
a: int = 1
b: int = 2
c: int = 3
@dataclass
class Qux(KWix):
_: KW_ONLY
q: str = -2
u: str = -1
x: int = 0
@dataclass
class Bar(Foo):
_: KW_ONLY
x: int = 7
y: int = 8
z: int = 9
@dataclass
class Baz(Bar, Qux):
_: KW_ONLY
a: int = 6
b: int = 7
q: int = 0
@dataclass
class Auz(Bar):
_: KW_ONLY
Seaborn
Since Seaborn Clustermap passes all extra keyword-arguments to Heatmap
using KWix
can make it
easy to know what these parameters are and easy to pass them accordingly
@dataclass
class SeabornHeatmap(KWix):
_: KW_ONLY
# heatmap parameters
vmin: Optional[float] = None
vmax: Optional[float] = None
cmap: Optional[str] = 'inferno'
center: Optional[float] = None
robust: bool = True
annot: Optional[bool] = None
fmt: Optional[str] = '.2g'
annot_kws: Optional[dict] = None
linewidths: Optional[float] = 0
linecolor: Optional[str] = 'white'
cbar: bool = True
cbar_kws: Optional[dict] = None
cbar_ax: Optional['Axes'] = None
square: bool = False
xticklabels: Union[bool, list, str, bool] = 'auto'
yticklabels: Union[bool, list, str, bool] = 'auto'
mask: Optional[Union['NPArray', 'DataFrame']] = None
ax: Optional['Axes'] = None
@dataclass
class SeabornClustermap(SeabornHeatmap, KWix):
_: KW_ONLY
# clustermap parameters
pivot_kws: Optional[dict] = None
method: 'LinkageMethod' = 'SINGLE'
metric: 'PDistMetric' = 'CORRELATION'
z_score: Optional[int] = 0
standard_scale: Optional[int] = None
figsize: Tuple[int, int] = (10, 10)
cbar_kws: Optional[dict] = None
row_cluster: bool = True
col_cluster: bool = True
row_linkage: Optional[dict] = None
col_linkage: Optional[dict] = None
row_colors: Optional[dict] = None
col_colors: Optional[dict] = None
mask: Optional[dict] = None
dendrogram_ratio: float = 0.2
colors_ratio: float = 0.03
cbar_pos: 'CBarPos' = (0.02, 0.8, 0.05, 0.18)
tree_kws: Optional[dict] = None
clstmap = SeabornClustermap()
clstmap.curvals()
{'cbar_kws': None,
'cbar_pos': (0.02, 0.8, 0.05, 0.18),
'col_cluster': True,
'col_colors': None,
'col_linkage': None,
'colors_ratio': 0.03,
'dendrogram_ratio': 0.2,
'figsize': (10, 10),
'mask': None,
'method': 'SINGLE',
'metric': 'CORRELATION',
'pivot_kws': None,
'row_cluster': True,
'row_colors': None,
'row_linkage': None,
'standard_scale': None,
'tree_kws': None,
'z_score': 0}
clstmap.inhvals()
{'annot': None,
'annot_kws': None,
'ax': None,
'cbar': True,
'cbar_ax': None,
'center': None,
'cmap': 'inferno',
'fmt': '.2g',
'linecolor': 'white',
'linewidths': 0,
'robust': True,
'square': False,
'vmax': None,
'vmin': None,
'xticklabels': 'auto',
'yticklabels': 'auto'}
clstmap.allvals()
{'annot': None,
'annot_kws': None,
'ax': None,
'cbar': True,
'cbar_ax': None,
'cbar_kws': None,
'cbar_pos': (0.02, 0.8, 0.05, 0.18),
'center': None,
'cmap': 'inferno',
'col_cluster': True,
'col_colors': None,
'col_linkage': None,
'colors_ratio': 0.03,
'dendrogram_ratio': 0.2,
'figsize': (10, 10),
'fmt': '.2g',
'linecolor': 'white',
'linewidths': 0,
'mask': None,
'method': 'SINGLE',
'metric': 'CORRELATION',
'pivot_kws': None,
'robust': True,
'row_cluster': True,
'row_colors': None,
'row_linkage': None,
'square': False,
'standard_scale': None,
'tree_kws': None,
'vmax': None,
'vmin': None,
'xticklabels': 'auto',
'yticklabels': 'auto',
'z_score': 0}
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
regsyn-0.0.3.tar.gz
(9.4 kB
view details)
Built Distribution
File details
Details for the file regsyn-0.0.3.tar.gz
.
File metadata
- Download URL: regsyn-0.0.3.tar.gz
- Upload date:
- Size: 9.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60557c502eef168629b44bcc03d3786d1dacf9bd60aeb96ac614469349e63fe6 |
|
MD5 | a4acd67f11bebfe602633df66b78f521 |
|
BLAKE2b-256 | 425122979dfe5d37a72c29afc33577f3c5a760dbb2acfbf07c4b01e436594886 |
File details
Details for the file regsyn-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: regsyn-0.0.3-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f27e6f3bc8220789871c668c408fcd97ff3cc76053368fef717e8124c4738246 |
|
MD5 | 5150c3f879b1597439f579400bd356f2 |
|
BLAKE2b-256 | 6b06f021789a7cda66f7e263fa36ecaa5a63dd033f520c3709ea6121186480fa |