python - 如何从psychopy的iohub动态重命名hdf5文件

标签 python yaml psychopy

我正在使用 Psychopy 1.82.01 Coder 及其 iohub 功能(在 Ubuntu 14.04 LTS 上)。它正在工作,但我想知道是否有一种方法可以动态重命名它在实验过程中生成的 hdf5 文件(这样最终我知道它属于哪个参与者,并且两个参与者将获得两个文件而不覆盖其中一个) 。 在我看来,文件名是在这个文件中确定的: https://github.com/psychopy/psychopy/blob/df68d434973817f92e5df78786da313b35322ae8/psychopy/iohub/default_config.yaml 但有没有办法动态改变这个?

最佳答案

如果您想为每次实验运行创建不同的 hdf5 文件,则选项取决于您启动 ioHub 进程的方式。假设您使用 psychopy.iohub.launchHubServer() 函数来启动 ioHub,那么您可以将 'experiment_code' kwarg 传递给该函数,并将其用作 hdf5 文件名。

例如,如果您使用以下代码创建了一个脚本并运行它:

import psychopy.iohub as iohub

io = iohub.launchHubServer(experiment_code="exp_sess_1")

# your experiment code here ....
# ...

io.quit()

将在与脚本文件相同的文件夹中创建名为“exp_sess_1.hdf5”的 ioHub hdf5 文件。

顺便说一句,您不必将每个实验 session 数据保存到单独的 hdf5 文件中。 ioHub hdf5 文件结构旨在将多个参与者/ session 数据保存在单个文件中。每次运行实验时,都需要一个唯一的 session 代码,每次运行的数据都保存在 hdf5 文件中,并具有与 session 代码关联的 session ID。

关于python - 如何从psychopy的iohub动态重命名hdf5文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29791005/

相关文章:

python - 存储由数据帧组成的字典的最有效方法

python - 使用 PyYaml 加载 YAML 失败?

java - 在网站上存储用户首选项的最佳方式?(不仅仅是字符串条目)

python - 在 PsychoPy 中记录所有按键以及等待按键?

psychopy - 将眼部部落眼动仪纳入心理治疗

python - 是否可以在最近的 Ubuntu 版本上安装 pymedia?

java - 具有 Java 客户端和 Python 服务器的数据报套接字

python - 基本功能帮助-Python

python - 如何创建字典来查找掉落的零?

latex - Pandoc 使用 Markdown 正文文本和 YAML 元数据文件生成 PDF 时出错