EyeLink数据文件(EDF)的可扩展解析器
项目描述
Python EyeLinkParser
Sebastiaan Mathôt和贡献者
版权所有 2016-2023
http://www.cogsci.nl/smathot
关于
python-eyelinkparser
模块提供了一个框架来解析EyeLink数据文件,这些文件是以.asc
格式保存的,即通过edf2asc
将.edf
文件转换为该格式后得到的文件。此模块主要用于个人使用,并且文档不太完善。
安装
pip install python-eyelinkparser
预期格式
解析器假定单眼记录。
预期消息
默认情况下,解析器假定特定消息被发送到日志文件。如果您使用不同的消息,您需要覆盖_eyelinkparser.EyeLinkParser
中的函数。这里没有解释,但您可以通过查看源代码来了解其工作原理。
试验开始
start_trial [trialid]
试验结束
end_trial
stop_trial
变量
var [name] [value]
连续数据段的开始
start_phase [name]
phase [name]
连续数据段的结束
end_phase [name]
stop_phase [name]
函数参考
eyelinkparser.EyeLinkParser(folder='data', ext=('.asc', '.edf', '.tar.xz'), downsample=None, maxtracelen=None, traceprocessor=None, phasefilter=None, phasemap={}, trialphase=None, edf2asc_binary='edf2asc', multiprocess=False, asc_encoding=None, pupil_size=True, gaze_pos=True, time_trace=True)
主要解析器类。通常不会直接创建此类,而是通过eyelinkparser.parse()
函数创建,该函数接受与EyeLinkParser
构造函数相同的参数(即下面的参数)。
参数
-
folder: str, 可选:包含.EDF或.ASC数据文件或压缩为.TAR.XZ存档的文件夹。
-
ext: str或tuple,可选:数据文件的允许文件扩展名,或扩展名的元组。
-
downsample: int 或 None,可选:指示是否应该对跟踪(如果有的话)进行降采样。例如,10 的值意味着信号变短 10 倍。降采样创建一个简单的跟踪处理器,因此不能与跟踪处理器参数结合使用。
-
maxtracelen: int 或 None,可选:跟踪的最大长度。较长的跟踪将被截断,并发出
UserWarning
。此长度是指降采样/处理后的跟踪。 -
traceprocessor: 可调用对象 或 None,可选:在跟踪写入 SeriesColumn 之前应用于每个跟踪的函数。这可以用来应用最好在原始信号上进行的操作序列,例如首先纠正闪烁,然后降采样信号。
函数必须接受两个参数:首先是一个跟踪标签,它是 'pupil'、'xcoor'、'ycoor' 或 'time'。这允许函数区分不同的信号类型;其次,是跟踪本身。
有关应用闪烁校正和降采样的便利函数,请参阅
eyelinkparser.defaulttraceprocessor
。 -
trialphase: str 或 None,可选:指示在试验开始时应自动启动的相名称,或
None
表示不应自动启动试验。这对于处理由单个长周期组成的试验或没有写入日志文件的start_phase
消息非常有用。 -
phasefilter: 可调用对象 或 None,可选:接收相名称作为参数的函数,并返回一个 bool 值,指示是否应该保留该相。
-
phasemap: dict,可选:一个字典,其键是重命名为相关值的相名称。这主要用于合并后续跟踪,在这种情况下,键是第一个跟踪,值是第二个跟踪。
-
edf2asc_binary: str,可选:edf2asc 可执行文件名称,如果可用,可以用来自动将 .edf 文件转换为 .asc。如果没有可用,解析器只能解析 .asc 文件。
-
multiprocess: bool 或 int 或 None,可选:指示是否应该在不同进程中处理每个文件。这可以显著加快解析速度。如果不为
False
,则应是一个 int,表示进程数,或 None 表示进程数应与核心数相同。 -
asc_encoding: str 或 None,可选:指示
.asc
文件的字符编码,或None
使用系统默认值。 -
pupil_size: bool,可选:指示是否应存储瞳孔大小跟踪。如果启用,瞳孔大小存储为
ptrace_[phase]
列。 -
gaze_pos: bool,可选:指示是否应存储水平和垂直注视位置跟踪。如果启用,注视位置存储为
xtrace_[phase]
和ytrace_[phase]
列。 -
time_trace: bool,可选:指示是否应存储时间戳跟踪,这些跟踪指示对应瞳孔和注视位置跟踪的时间戳。如果启用,时间戳存储为
ptrace_[phase]
列。
示例
import eyelinkparser as ep
dm = ep.parse(defaulttraceprocessor=ep.defaulttraceprocessor(
blinkreconstruct=True, downsample=True, mode='advanced'))
教程
有关使用 EyeLinkParser 的教程,请参阅
许可证
python-eyelinkparser
根据 GNU 通用公共许可证 v3 许可。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定该选择哪个,请了解有关安装包的更多信息。
源分发
构建分发
python-eyelinkparser-0.17.3.tar.gz的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 6735b9f1ddec29c68f8f968b167c8d23d84986cd2c525d46bc30e5a4e227e507 |
|
MD5 | 13f09c80e3014519b09f927054a84e1d |
|
BLAKE2b-256 | e594e407a3e17753827435cc3cc5fec1a3c0855bad0f0ba7b4699bfdc3f0097d |
python_eyelinkparser-0.17.3-py2.py3-none-any.whl的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | d7e76518c7ff3db95ab7e9cb74b1101e8474736a4ff26502006eb2133ad26e18 |
|
MD5 | 61ed7407bc0d6f659c05b3bf872eb295 |
|
BLAKE2b-256 | 2d4da6a3a2bfa12da422d0c04d4bb771f8204e1412c298f294734ee129590ae6 |