Description
Describe the bug
When executing cache.get_session_table() function, the download of corresponding *.csv file completed immediately. However, the get_session_table function would just hang there for minutes before it returned the DataFrame.
To Reproduce
https://allensdk.readthedocs.io/en/latest/_static/examples/nb/ecephys_data_access.html
import os
import shutil
import numpy as np
import pandas as pd
from allensdk.brain_observatory.ecephys.ecephys_project_cache import EcephysProjectCache
data_directory = '/local1/ecephys_cache_dir' # must be updated to a valid directory in your filesystem
manifest_path = os.path.join(data_directory, "manifest.json")
cache = EcephysProjectCache.from_warehouse(manifest=manifest_path)
sessions = cache.get_session_table()
probes = cache.get_probes()
channels = cache.get_channels()
units = cache.get_units()
Expected behavior
Return DataFrames of sessions, probes, channels, and units shortly after the cache download these four files:
sessions.csv
(7.8 kB)probes.csv
(27.0 kB)channels.csv
(6.6 MB)units.csv
(51.4 MB)
Actual Behavior
The download of these four *.csv files completed immediately. However, the "get" function would just hang there for minutes before it returned the DataFrame.
Environment (please complete the following information):
- OS & version: macOS 10.15.3
- Python version: 3.7.8
- AllenSDK version: 2.1.0
Additional context
To bypass this slow data fetch issue with cache, I manually downloaded *.nwb files from DANDI Archive, and use EcephysSession.from_nwb_path()
function to import raw *.nwb files. However, it seems that I cannot manually import LFP data of specific probes from local *.nwb files.
Is there any api or function that can provide way to do this?
Many thanks!