<jupyter_start><jupyter_text>Intake[Intake](https://github.com/ContinuumIO/intake) is a library from Anaconda Inc for sharing and discovering datasets in Python. Datasets that are packaged with intake consist of a manifest file describing where to find the dataset and a plugin which is used to load the dataset. On our Pangeo you will find some datasets which are already installed along with the standard set of plugins and some extras for loading environmental datasets.  Listing available datasetsOut of the box there are a number of datasets already available to you here on our Pangeo. You can list them by importing intake and exploring the default intake catalog.<jupyter_code>from intake import cat
for dataset in cat:
    print("{name}: {description}".format(name=dataset, description=cat[dataset].description))<jupyter_output>car_park_tickets_sold: Data about the number of tickets sold in Exeter car parks from Exeter City Council (https://exeterdatamill.com/dataset/car-park-tickets-sold)
ncic_daily_land_obs: National Climate Information Centre (NCIC) daily land observations.<jupyter_text>Loading datasetsDatasets can be accessed from the intake catalog at a property of the same name. For example we have the `ncic_daily_land_obs` dataset which can be accessed at `cat.ncic_daily_land_obs()`. This dataset object has some properties for getting information about the dataset such as `description` used above. It also has two methods for reading the data from the dataset; `read()` and `read_chunked()`.   `read()`When calling `read()` it will attempt to load the entire dataset into memory using an appropriate container. This may be desirible if you are working with a small dataset stored in a `csv` file. Calling `read()` on such a dataset will load the data into memory as a pandas dataframe.<jupyter_code>car_park_tickets_sold = cat.car_park_tickets_sold().read()
car_park_tickets_sold.head()<jupyter_output><empty_output><jupyter_text>`read_chunked()`If you are accessing large datasets which you do not wish to load into memory you can call `read_chunked()`, this will return you a `dask` object such as a `dataframe`, `array` or `bag` or an object based on one of these primitives such as an iris cube (which contains a `dask.array`). This allows you to work lazily in a dask workflow where computations and data loading happen 'just in time'.<jupyter_code># This can take a while
ncic = cat.ncic_daily_land_obs().read_chunked()
ncic
import iris
[rainfall] = ncic.extract(iris.Constraint(name='lwe_thickness_of_precipitation_amount'))
rainfall
rainfall.has_lazy_data()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.06598016781083142, 'fraction_numerical': 0.0, 'mean_word_length': 5.902631578947369, 'pattern_counts': {'":': 0, '<': 12, '<?xml version=': 0, '>': 12, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '267398', 'license': 'BSD-3-Clause', 'n_tokens_mistral': 740, 'n_tokens_neox': 705, 'n_words': 330, 'path': '1.2 Data/1.2.0 Intake.ipynb', 'repo_name': 'met-office-lab/example-notebooks', 'size': '2622'}