How to download data from figshare?#

Following How to download data from the server?, this notebook shows how to download the same data from figshare.

[1]:
from polpo.preprocessing.load.pregnancy import (
    FigsharePregnancyDataLoader,
    PregnancyPilotMriLoader,
)
[2]:
SESSION_ID = 1

folder_name = f"ses-{str(SESSION_ID).zfill(2)}"

loader = FigsharePregnancyDataLoader(
    data_dir="~/.herbrain/data/pregnancy/mri",
    remote_path=f"mri/{folder_name}",
)

loader()
[2]:
'/home/luisfpereira/.herbrain/data/pregnancy/mri/ses-01'

The most general FigShareDataLoader could also be used, but FigsharePregnancyDataLoader has more guard rails at instantiation.

PregnancyPilotMriLoader conveniently wraps FigsharePregnancyDataLoader for the use case shown in this slide. The following is equivalent to the above (except it outputs a list).

[3]:
loader = PregnancyPilotMriLoader(subset=[SESSION_ID])

loader()
[3]:
['/home/luisfpereira/.herbrain/data/pregnancy/mri/ses-01/BrainNormalizedToTemplate.nii.gz']

Tip: ListSqueeze it if needed!

Further reading#