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 Requestcontextholder在spring 4中具有并发访问权限。IBMWebSphere上的x Web应用程序?   java如何下载、设置和使用Eclipse?   java如何组合这些mysql语句   java JDBC无法连接到openshift上的mysql数据库   如果存在允许正确处理的重载,java对于方便的方法来说是否可行?   使用hibernate序列的java Spring MVC不存在   具有路径的java Selenium ChromeDriver负载扩展问题   读一本书。java中的java文件   退出队列时,Java队列程序结果为空   Java lambda返回带有重复代码问题的列表   java使用意图从其他活动传递数据并在listview中显示   java如何在java中创建JSON输出   java Android:在不破坏或暂停活动的情况下关闭显示   支持Android电视和手机的java多apk   关于Java应用程序测试和调试的一组问题   如何在JavaSE中使用jdbcRealmShiro进行授权   在java中是否有一个无异常检查的URL解析实用程序?   当页面上有多个相同类型的元素时,java会选择一个特定的元素   递归需要帮助发现java代码中的缺陷