Source code for libpysal.examples

""" The :mod:`libpysal.examples` module includes a number of small built-in
    example datasets as well as functions to fetch larger datasets.
"""

from .base import example_manager
from .remotes import datasets as remote_datasets
from .remotes import download as fetch_all
from .builtin import datasets as builtin_datasets

from typing import Union

__all__ = ["get_path", "available", "explain", "fetch_all"]

example_manager.add_examples(remote_datasets)
example_manager.add_examples(builtin_datasets)


[docs]def available() -> str: """List available datasets.""" return example_manager.available()
[docs]def explain(name: str) -> str: """Explain a dataset by name.""" return example_manager.explain(name)
def load_example(example_name: str) -> Union[base.Example, builtin.LocalExample]: """Load example dataset instance.""" return example_manager.load(example_name)
[docs]def get_path(file_name: str) -> str: """Get the path for a file by searching installed datasets.""" installed = example_manager.get_installed_names() for name in installed: example = example_manager.datasets[name] pth = example.get_path(file_name, verbose=False) if pth: return pth print("{} is not a file in any installed dataset.".format(file_name))