首页 > 编程知识 正文

mturk好用吗,mturk官网

时间:2023-05-06 17:55:44 阅读:269153 作者:2846

目录

问卷制作

问卷发布

数据下载

数据处理

​​​​​​​

问卷制作

据说MTurk自带的问卷不是很好用,所以我们选择在Qualtrics制作问卷。

新建project创建新问卷: 

左侧有很多格式与功能,不一一赘述了,例如常用的Matrix table:

设置为必答题: 

最重要的一步!设置survey code!

在Qualtrics做问卷获得一个code,工人把code填回MTurk才能将二者关联起来,证明自己填写了问卷 // 实践中发现有工人填错了code,但是通过其他信息的对比也能核实其身份,虽然很麻烦,但善(怕)良(事)的我还是支付了工资。

选择左侧的survey flow,再点击下面绿色的Add a New Element Here 

选择Embedded Data

命名为Random ID

设置值

设置随机数,例如在10000到99999的整数,Insert

 鼠标放在Move上,把它拖拽到survey flow的顶部并保存,survey code就设置好了

最后我们需要再操作一番在问卷的尾部显示这个survey code

先添加一个text question,修改一下文本

Here is your ID: Copy this value to paste into Mturk. When you have copied this ID, please click the next button to submit.

选择Piped Text - Embedded Data Field - Random ID -  Insert

问卷就会变成这样,每次都会出现随机的survey code

问卷发布

首先需要在Qualtrics发布问卷,然后将问卷链接粘贴到MTurk 

这里应该有MTurk操作步骤,但是因为账号问题暂时上不去了,下次一定..

数据下载

Qualtrics:

选择 Export & Import 下载csv格式的数据

MTurk:

选择 Download csv 下载数据

数据处理

由于Qualtrics包含问卷作答结果,Mturk包含问卷approved或reject的状态,二者共同拥有的信息是Random ID,即上文所设置的survey code,这是连接两个表的关键标识。

方法一:excel的vlookup函数

若想根据学号把上面的两个表合并,选中第一个表的绿框位置的单元格,点击fx选择vlookup函数。

第一个参数,你想搜什么,比如A2的值 

第二个参数,你想从哪里搜索第一个参数,从某区域。建议在数据源区域中按F4添加绝对引用,具体原因参照 vlookup 2张表 显示na_vlookup返回#N/A的四种解决办法_weixin_39833469的博客-CSDN博客

第三个参数,你想在当前单元格里展示什么,比如2代表数据表选中区域(上一步)的第二列

 最后一个参数,最简单易懂,图里有说明,一般设置为FALSE即可

下拉复制公式,可以得到所有人成绩。#N/A表示没有搜索到。 

但是!注意这个大坑——

 如果交换第二个表的列顺序,我们需要检索的学号不在第一列,就会出现下图这种奇怪的#N/A

不太清楚这个函数具体机制,所以!强烈安利使用python!

方法二:python的pandas

import pandas as pd# 导入mturk下载的csv文件,只保留survey code和status两列data_mturk = pd.read_csv('/Users/ici/Desktop/low_m.csv')data_mturk = data_mturk.loc[:,['Answer.surveycode','AssignmentStatus']]# 导入qualtrics下载的csv文件,因为前几行包括了问卷问题等信息,所以进行一下切片处理data_qualtrics = pd.read_csv('/Users/ici/Desktop/low_q.csv')data_qualtrics = data_qualtrics.loc[2:]# 将mturk的Answer.surveycode和qualtrics的Random ID转换成相同的数据类型data_qualtrics['Random ID'] = data_qualtrics['Random ID'].astype(int)data_mturk['Answer.surveycode'] = data_mturk['Answer.surveycode'].astype(int)# 合并combine_file = pd.merge(data_qualtrics, data_mturk, left_on='Random ID', right_on='Answer.surveycode')# 仅保留状态为Approved的数据combine_file = combine_file.loc[combine_file['AssignmentStatus'] == 'Approved']# 生成并导出新csv文件combine_file.to_csv('/Users/ici/Desktop/new.csv')

 舒服了,下次只需要修改代码的文件路径就能轻松合并两个csv文件了~~~

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。