ez_kaggle.setup

Foundational set up for kaggle api usage and config

General


source

in_kaggle

 in_kaggle ()

Check if code is running in a kaggle kernel environment


source

import_kaggle

 import_kaggle ()

Import kaggle API, using Kaggle secrets kaggle_username and kaggle_key if needed

api = import_kaggle()
res = api.competitions_list(search='titanic')
assert len(res) > 0
print(res)
[spaceship-titanic, titanic]

source

get_username

 get_username ()

Competition


source

get_comp_data

 get_comp_data (competition)

Get a path to data for competition, downloading it if needed

path = get_comp_data('titanic')
assert path == Path('titanic')
assert path.exists()
assert path.ls().sorted() == [Path('titanic/gender_submission.csv'),Path('titanic/test.csv'),Path('titanic/train.csv')]

source

competition_config

 competition_config (competition, data_path=None, dataset_username=None,
                     model_dataset_name=None, libraries_dataset_name=None,
                     required_libraries=None, pip_cmd='pip')
Type Default Details
competition ie titanic
data_path NoneType None
dataset_username NoneType None ie isaacflath
model_dataset_name NoneType None ie ‘models-pawpularity’
libraries_dataset_name NoneType None ie ‘libraries-pawpularity’
required_libraries NoneType None ie [‘fastkaggle’,‘fastai’]
pip_cmd str pip
cfg = competition_config('titanic')
test_eq(cfg.keys(),['competition', 'pip_cmd', 'data_path', 'datasets_username', 'model_dataset_name', 'libraries_dataset_name', 'required_libraries'])
print(json.dumps(cfg,indent=4))
Inferring dataset_username from credentials
Inferring model_dataset_name from competition
Inferring libraries_dataset_name from competition
Setting required libraries to ['fastkaggle']
{
    "competition": "titanic",
    "pip_cmd": "pip",
    "data_path": null,
    "datasets_username": "isaacflath",
    "model_dataset_name": "models-titanic",
    "libraries_dataset_name": "libraries-titanic",
    "required_libraries": [
        "fastkaggle"
    ]
}

source

setup_comp

 setup_comp (competition, dataset_username=None, model_dataset_name=None,
             libraries_dataset_name=None, required_libraries=None,
             pip_cmd='pip')
Type Default Details
competition Name of compeition
dataset_username NoneType None username where datasets will be stored
model_dataset_name NoneType None name to store model weights
libraries_dataset_name NoneType None name to store libraries
required_libraries NoneType None needed libraries for competition
pip_cmd str pip pip command to use for installation
setup_comp('titanic')
assert Path('fastkaggle.json').exists()
Inferring dataset_username from credentials
Inferring model_dataset_name from competition
Inferring libraries_dataset_name from competition
Setting required libraries to ['fastkaggle']

source

get_config_values

 get_config_values (path='.', **cfg_overrides)
Type Default Details
path str . path to kaggle.json file or None
cfg_overrides
cfg = get_config_values() 
test_eq(cfg.keys(),['competition', 'pip_cmd', 'data_path', 'datasets_username', 'model_dataset_name', 'libraries_dataset_name', 'required_libraries'])
print(json.dumps(cfg,indent=4))
{
    "competition": "titanic",
    "pip_cmd": "pip",
    "data_path": ".",
    "datasets_username": "isaacflath",
    "model_dataset_name": "models-titanic",
    "libraries_dataset_name": "libraries-titanic",
    "required_libraries": [
        "fastkaggle"
    ]
}
cfg = get_config_values(competition=123,pip_cmd=4) 
print(json.dumps(cfg,indent=4))
{
    "competition": 123,
    "pip_cmd": 4,
    "data_path": ".",
    "datasets_username": "isaacflath",
    "model_dataset_name": "models-titanic",
    "libraries_dataset_name": "libraries-titanic",
    "required_libraries": [
        "fastkaggle"
    ]
}