more-kedro :hammer_and_wrench:
A collection of utilities and extensions for Kedro
Installation
$ pip install more-kedro
hooks.TypedParameters
Enables on the fly typing and validation of your parameter dictionaries.
Usage
Activate by adding the TypedParameters hook to your KedroContext:
from more_kedro.hooks import TypedParameters
class ProjectContext(KedroContext):
hooks = (
TypedParameters(),
)
...
Now you can specify types in your parameters.yml:
training__type: my_project.nodes.model.TrainingParams
training:
num_iter: 100
learning_rate: 0.001
or if you pass TypedParameters(inline=True):
training:
type: my_project.nodes.model.TrainingParams
num_iter: 100
learning_rate: 0.001
The benefit of the first approach is that you can overwrite your parameter values in conf/local/
without having to respecify the types.
Any node which has an input params:training will now be injected with the
equivalent of TrainingParams(num_iter=100, learning_rate=0.001) instead of a raw
dictionary. You can use any custom class, dataclass,
pydantic model or any other
callable to get validation and typing of your parameters. The type must contain
the full location and name of your type object, so that it can be imported
from the root of your project.
The parameters are typed right after your DataCatalog is created, so any failures
will surface before your kedro run starts.
datasets.TryLoadDataSet
A dataset which uses an underlying dataset definition to load and save, but if the load method throws an exception it returns a default value instead. Can be used if the existence of some data is optional to the pipeline.
Usage
TryLoadDataSet takes two arguments, dataset which is a normal dataset definition,
and an optional default_value which is the value to return if the load fails
(defaults to None). Example of an entry in catalog.yml:
companies:
dataset:
type: pandas.CSVDataSet
filepath: "path/to/companies.csv"
default_value: null
Contributions
If you have any useful Kedro utilities such as runners, hooks, datasets or whatever it may be - PR's are very welcome!
Metadata
Release files for more-kedro 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| more-kedro-0.2.0.tar.gz | 3.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| more_kedro-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.4 kB
Release files / more-kedro-0.2.0.tar.gz
| Download URL | more-kedro-0.2.0.tar.gz |
|---|---|
| Size | 3.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
63a64ff4287cda4b8d8263e13b2527500e58f4750d854701e00760bce263fa33
|
|
BLAKE2b-256 checksum How to use checksums |
bcba7d0d6678e427d562f436a1b6eca6796b43c551ed86b63c16398a30df334e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2
|
Release files / more_kedro-0.2.0-py3-none-any.whl
| Download URL | more_kedro-0.2.0-py3-none-any.whl |
|---|---|
| Size | 4.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0771b75d92beea43ddbbfeabb208c8407ca6d92d1ee794eebe0d46219b540749
|
|
BLAKE2b-256 checksum How to use checksums |
b68559ebbbdb8d5af1dbd35e0544ba79862ad0dd3a46c5c260c9cf48157273cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2
|