otree和mturk的实用程序集

mturkotreeutils的Python项目详细描述


安装:

  1. 要么
  • 在终端窗口中键入pip install mturkotreeutils
  • 克隆退出项目^ {TT2}$,并将^ {TT3}$文件夹复制到您的项目文件夹中,紧邻您的模块的应用程序。
  1. 在此之后,将“otree\u mturk\u utils”添加到settings.py文件的installed\u apps部分,如下所示:

    INSTALLED_APPS = [
        'otree',
        'otree_mturk_utils',
    ]
    
  2. 在项目的views.py文件中,导入页面:

    from otree_mturk_utils.views import CustomMturkPage, CustomMturkWaitPage
    

使用方法:

要使用自定义等待页,请不要从“标准”otree waitpage继承您的等待页,而是从custommturkwaitpage继承:

from otree_mturk_utils.views import CustomMturkPage, CustomMturkWaitPage

class MyWaitPage(CustomMturkWaitPage):
     ...

custommturkwaitpage除了otree waitpage的标准属性(例如wait_for_all_groupsgroup_by_arrival_time)外,还有四个附加属性(请参阅下面一节中的详细信息):

  1. pay_by_task:在等待页面上正确提交的每个任务的补偿(以点数或美元为单位)。默认值:0
  2. pay_by_time:在等待页面等待每分钟的补偿(以点数或美元计)。默认值:0
  3. startwp_timer:参与者退出研究的速度(秒)。默认值:Never
  4. task:一个人在等待时可以做什么样的活动。现在有两种选择:填写“大五”问卷和真正的努力任务(找到两个最大数之和)。在未来,我们将添加游戏作为一个选项(tic tac toe,snake,hangman等)。现在可能的值:['survey', 'real_effort']。默认值:real_effort
  5. use_task:参与者在等待时是否会看到任何类型的任务。默认值:True

默认的自定义等待页做什么?

创建自定义等待页是为了允许参与者等待组形成, 为了确保他们能在等待的时候随时准备开始实验, 如果等待时间太长,让他们完成实验。

实验者可以要求参与者在等待的时候做一项活动, 通过设置页面的属性(这里使用'u real_effort_task=true, 有真正的努力任务)。此活动的主要目标是让参与者 在他等待的时候集中精力做实验。但要小心,一个小组成立, 组的成员将被转发到下一页,即使他们位于页的中间。 如果没有预料到,这可能会造成挫败感,因此您应该在说明中警告参与者。 (如果任务是回答调查,他们将在实验结束时完成调查, 他们以前的答案将被保存。)

你可以根据参与者的等待时间和他在努力中的“得分”来决定支付给他 通过在waitpage中设置属性pay_by_task和pay_by_time完成任务(默认情况下,这是0)。在实验结束时,您将在参与者中找到此额外付款。vars['payment_for_wait']

实验者还可以设定一个时间限制,在这个时间限制之后,玩家可以完成研究。 如果他想要(通过指定属性)“TimeTyBayExeXiOffice”,以分钟标记,默认为 等于2小时)。如果超过30分钟,这是隐藏的。点击“完成研究”,参与者将跳过 剩余应用程序序列中的所有custommturkpage和custommturkwaitpage页面(如果您希望他完成调查 在最终的应用程序中,不要从custommturkpage继承调查页面)。

也许在以后的版本中,我们会提供只跳过当前回合或当前应用程序的选项, 不一定是会话的所有剩余custommurkpage和custommurkwaitpage。 另外,如果剩余的参与者不足以创建 一个新的小组,向等待的参与者发出不必要的信号等待。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将Map<String,String>传递给需要Map<String,Object>   java在循环中使用字符串而不是StringBuilder是否会造成内存损失?   jnlp如何更新java控制台JRE?   java更改、修改和重新打包CXFAPI源文件   JavaFXJava应用程序在Fedora上运行一段时间后关闭   使用来自不同类的方法的java   java如何通过ant脚本在linux中使用subst?   java在使用camunda modeler进行base64编码/解码时出错   获取java。netbeans、weblogic和fastswap设置为true时的lang.NoSuchMethodError   java如何提高FinalizerThread在GC中收集对象的优先级   java检测具有相同根的单词   netbeans crud应用程序中的java错误