QualtricsからoTreeに参加者IDを引き継ぐ方法:参加者データの紐づけ

QualtricsからoTreeに参加者IDを引き継ぐ方法:参加者データの紐づけ

2022年4月3日

実験や調査をする際に、参加者にQualtricsで作成した質問紙に回答してもらい、その後oTreeで集団実験を行うことがあると思います。その際に問題になるのが、それぞれのデータファイルでの参加者の紐づけです。

本記事では、Qualtricsで作成した参加者IDを、そのままoTreeの参加者IDとして引き継ぐ方法を紹介します。

1. oTreeでルームを作成する

oTree Rooms
まず、oTreeで実験課題を行う”Rooms”を作成します。実験を行う参加者人数のRoomsを作成し、Room-wide URLを取得します。”https://hogehoge.herokuapp.com/room/Test_Room”といったリンクが得られるので、メモ帳などに控えて置きましょう。

ちなみに、今回は”participant_label”のファイルを別途用意しないルームを作成しています。participant_labelのファイルをoTree上で設定しなくても、次の設定を行えば、自動的に参加者IDを引き継いでくれます。participant_labelを用意する場合は、以下の埋め込みデータの設定で、それに合致したラベルを吐き出すようにする必要があります。

2. Qualtrics上での設定

Qualtrics 埋め込みデータ
Qualtrics上での設定は主に2つです。一つは、参加者IDとなる乱数を、埋め込みデータとして生成すること、もう一つはアンケート終了時にリダイレクトすることです。

まず、Qualtrics上で、アンケートフローから「埋め込みデータの設定」を選択し、フィールドに入れる値を設定から「ランダムな数値」を選択します。8桁の数字の場合は${rand://int/10000000:99999999}このコードを入れると動作します。

Qualtrics アンケートの終了
次に、アンケートフローの「アンケートの終了」を設定します。「アンケートの終了」のカスタマイズから、「URLにリダイレクト」を選びます。そして、リダイレクト先として、先程作成した、URLに/?participant_label=${e://Field/workerId}を付けたものを打ち込みます。

https://hogehoge.herokuapp.com/room/Test_Room/?participant_label=${e://Field/workerId}

具体的には、こういったリンクになります。

oTree データ
oTreeで最終的に出てくるデータ

oTreeで最終的に出てくるデータには、participant.labelに部分に含まれます。これと、Qualtricsから吐き出されるのcode列を参照すれば、紐付けができます。

ちなみに、”${e://Field/workerId}”のworkerIdの部分を、”${e://Field/ResponseID}”にするとQualtricsのResponseIdがoTreeに引き継がれます。ダブりを防ぐという意味では、こちらの方が良いかもしれません。

I am a big fan of using oTree for running behavioral experiments online and loca…
clintmckenna.com

参考にしたサイトです。