1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- """
- AxographIO
- ==========
- IO class for reading AxoGraph files (.axgd, .axgx)
- """
- from neo.io.basefromrawio import BaseFromRaw
- from neo.rawio.axographrawio import AxographRawIO
- class AxographIO(AxographRawIO, BaseFromRaw):
- """
- IO class for reading AxoGraph files (.axgd, .axgx)
- Args:
- filename (string):
- File name of the AxoGraph file to read.
- force_single_segment (bool):
- Episodic files are normally read as multi-Segment Neo objects. This
- parameter can force AxographIO to put all signals into a single
- Segment. Default: False.
- Example:
- >>> import neo
- >>> r = neo.io.AxographIO(filename=filename)
- >>> blk = r.read_block(signal_group_mode='split-all')
- >>> display(blk)
- >>> # get signals
- >>> seg_index = 0 # episode number
- >>> sigs = [sig for sig in blk.segments[seg_index].analogsignals
- ... if sig.name in channel_names]
- >>> display(sigs)
- >>> # get event markers (same for all segments/episodes)
- >>> ev = blk.segments[0].events[0]
- >>> print([ev for ev in zip(ev.times, ev.labels)])
- >>> # get interval bars (same for all segments/episodes)
- >>> ep = blk.segments[0].epochs[0]
- >>> print([ep for ep in zip(ep.times, ep.durations, ep.labels)])
- >>> # get notes
- >>> print(blk.annotations['notes'])
- """
- name = 'AxographIO'
- description = 'This IO reads .axgd/.axgx files created with AxoGraph'
- _prefered_signal_group_mode = 'group-by-same-units'
- _default_group_mode_have_change_in_0_9 = True
- def __init__(self, filename='', force_single_segment=False):
- AxographRawIO.__init__(self, filename, force_single_segment)
- BaseFromRaw.__init__(self, filename)
|