PsychoPy Builder - 如何通过一系列试验休息?

时间:2014-12-02 12:27:30

标签: psychopy

在PsychoPy建设者中,我有很多试验,我想让参与者在休息/休息时间间隔,然后在他们做好准备时按SPACE继续。

关于如何最好地做到这一点的任何建议?

1 个答案:

答案 0 :(得分:3)

PsychoPy Builder使用TrialHandler类,您可以利用其属性在您想要休息时进行控制。

假设您的试用循环使用Excel / csv文件获取试用数据,请使用trialHandler的属性:thisTrialN

e.g。

1 /将包含文本组件的例程添加到循环中(可能在开头),使用“现在休息...”消息和键盘组件,以便在准备好继续时获取响应。

2 /添加自定义代码组件,并将类似于此代码的内容放入“Begin Routine”选项卡中:

if trials.thisTrialN  not in [ int(trials.nTotal / 2) ]:
    continueRoutine=False

其中'试验'是试用循环的'名称'。

以上内容将在当前的一系列试验中间休息,但你可以用这样的东西代替它

if trials.thisTrialN  not in [10,20]:
    continueRoutine=False

如果您想在10次之后停止并且在20次试验之后再次停止。

注意,如果您没有使用Excel文件,只是使用简单试用循环的“重复”功能,那么您需要将thisTrialN替换为thisRepN

如果你正在使用Excel文件和代表,你需要在你想要休息的时候考虑两者。

这可以使用Builder自己的变量之一 - continueRoutine,并在大多数试验中将其设置为false,这样大部分时间它都不会显示“休息”消息。

如果您想了解更多,请使用“编译脚本”按钮(或F5)并查看Builder为您生成的python代码。