python-training icon indicating copy to clipboard operation
python-training copied to clipboard

Clarify iteration and indexing for catalog.datasets

Open deeplycloudy opened this issue 4 years ago • 3 comments

I just used this notebook to remind myself how to get data from a THREDDS server, and managed to confuse myself when using catalog.datasets, as documented in siphon#361. I proposed a documentation fix to the DatasetCollection class, but also wanted to propose some changes to this notebook.

Specifically,

  • In section 1, cell 4: cat.datasets, when printed, looks like a list. I recommend adding "Here, cat.datasets is a dictionary, and what you see above is a list of its keys, which are also the filenames of the datasets. Accessing cat.datasets with one of these keys will return the Dataset that can be used to download the data, as you'll see below."
  • In section 3, above cell 10: "As noted above, the dataset name can be used to access each Dataset, but we can also index by position.
  • and below cell 11: "As you might have noticed, datasets is a special kind of dictionary that can be indexed in two ways, but it doesn't work like a list when you loop over it. Instead, since datasets is a dictionary, if you loop through it you will get a sequence of keys: the filenames. So, to loop through each Dataset and download it, you would writefor ds_name in datasets: datasets[ds_name].download(). That could be useful if you want to further filter out datasets based on the dataset name."

That might not be the best / shortest wording for a workshop setting, so suggestions welcome.

deeplycloudy avatar Apr 08 '21 21:04 deeplycloudy

Also (@dcamron ?) is there anything special about updating content in the tutorial notebooks? Is it just the main notebook that has to be updated?

deeplycloudy avatar Apr 08 '21 22:04 deeplycloudy

Yeah, there's nothing special to making changes to notebooks for outside contributors right now, and it should be fine for you to just update this notebook. Feel free to open a PR with these changes to Siphon Overview.ipynb and just clear any outputs after you confirm that it fully executes in your environment. I'll be glad to review it.

dcamron avatar Apr 08 '21 23:04 dcamron

Thanks @dcamron, it's ready, after some rethinking of my proposed fix, for your review.

deeplycloudy avatar Apr 09 '21 01:04 deeplycloudy