DataPipeはjsPsych用に開発されたデータ保存用APIで,DataPipe経由でOSFにオンライン実験データを保存することができます。これまでオンライン実験を実施する場合には保存先をどうするのかが大きな課題でしたが,DataPipeを利用することでデータ保存場所としてOSFを利用することができるようになります。このDataPipeはjsPsychだけでなく,lab.jsやPsyhoPyでも利用できます。
詳しくは以下の論文を参照してください。
de Leeuw, J. R. (2023). DataPipe: Born-open data collection for online experiments. Behavior Research Methods, 1–8. https://doi.org/10.3758/s13428-023-02161-x
オープンプラクティスの視点からは,OSFに実験データが蓄積されていくので,OSFをPublic設定にすれば,データ収集段階から透明性が確保されているということになりますね。
この記事ではlab.jsとDataPipeを組み合わせる方法を紹介します。jsPsychでのDataPipe利用についての黒木先生の解説も参考になります。
DataPiteのアカウントを作ります
まず,DataPipeアカウントとOSFアカウントを連携します
OSFのTokenを生成するため,「Connect OSF Account」をクリックしてOSFに移動します
Token name(何でもOK)を入れた後,「osf.full_write」にチェックを入れ,tokenを生成します
DataPipeに移動し,先ほど生成したTokenをコピーして「OSF token」に入れます
OSFに移動し,データを保存するプロジェクトを「Create Project」ボタンから作成します。任意のプロジェクト名をつけましょう。
作成したプロジェクトのプロジェクトID(URLのosf.io/xxxxx/のxxxxxの部分)をコピーします
DataPipeに移動して「+New Experiment」をクリックします
Existing OSF ProjectにプロジェクトIDをペーストします
「Create」をクリックすると,DataPipeを介したデータを保存する実験(の設定)が作成されます
Infoに表示される情報のうち,「Experiment ID」は後で使うので,コピーしておくとよいでしょう。
Code Samplesの「Select language」を「JavaScript」に変更するとJavaScript汎用の保存コードが表示されるので,jsPsych以外の実験プログラムを使う場合はこのコードを修正して使うことになります
DataPipeは送信されたデータが実験者が意図したデータかどうかの妥当性チェック(Validation check)の設定がデフォルトでONになっています。ここに「trial_type」と書かれているはずなので,「sender」に書き換えてください。