PsychoPy Builderで作る心理学実験 5th Edition¶
はじめに
前回の改定(2021年3月)から1年半近く経ちました。その間に初版から 第6章 で使い続けてきたRatingScaleコンポーネントが廃止されるという大きな変更がありました。厳密に言うと互換性のために残されていはいるのですが、標準の設定ではBuilderのコンポーネントペインに表示されなくなっています。とりあえずこの変更に対応しなければと思って原稿を読み返してみると、他にも対応していない変更点が思いのほかたくさん見つかったため、全体的に修正を加えることにしました。主な変更点は以下の通りです。
図に含まれるスクリーンショットのうち、2022.2.4との違いが大きいものを更新しました(全般)。
プロパティダイアログのタブ名の変更に対応しました(全般)。
単位としてpixを用いていたところを現バージョンの事実上の標準単位であるheightへ変更しました(全般)。
第3章のxlsx形式データファイルの確認部分を除いて、xlsx形式のデータファイルを使用しないようにしました(全般)。
[キーボードバックエンド] をioHubに設定しているときに、MouseオブジェクトのsetVisible()メソッドでカーソルを非表示に設定できない場合があることを注記しました(2章,8章)。
コンポーネントペインに追加されたカテゴリについての記述を追加しました(2章)。
実験情報ダイアログのparticipantにランダムな数値が自動入力されるようになったことに対応しました(2章,3章)。
ルーチンペインに配置したコンポーネント上で右クリックした時のメニューに対象のコンポーネント名が表示されるようになったことに対応しました(2章)。
視覚刺激の 位置揃え に対応しました(2章)。
Mac上でTextコンポーネントの日本語フォントがおかしくなる現象について追記しました(2章)。
カラーピッカーの仕様変更に対応しました(2章)。
2022.1.1以降、色の指定でRGB値を書くときにPythonの式とせず-1.0,0.0,1.0のようにカンマ区切りで三つの値を書いても認識するようになったことに言及しました(2章)。
実験設定ダイアログの「スクリーン番号の表示」ボタンについての記述を追加しました(2章)。
実験設定ダイアログに新設された「アイトラッキング」、「入力」タブについての説明を追加しました(2章)。
Polygonコンポーネントの [形状] の円に対応しました(3章)。
ルーチン新規作成時のダイアログに追加された [テンプレート] について補足しました(3章)。
小さな画面のPCで実行する場合に実際より寸法が大きいモニターを設定して回避する方法を紹介しました(4章)。
右クリックで表示されるコンテキストメニューからのコンポーネントの貼り付けに対応しました(4章)。
RatingScaleコンポーネントは以前から非推奨でしたが、ついにBuilderのコンポーネントペインに表示されないようになってしまったのでRatingScaleを使う部分を削除しました(6章)。
Imageコンポーネントの [サイズ [w, h] $] を空欄したときの動作についての解説を追加しました(6章)。
Imageコンポーネントで単色の長方形を描く機能について、解説していた方法が現行のバージョンでは使えなくなっていること、長方形を描くだけならPolygonコンポーネントを使うべきこと、マスクと組み合わせるテクニックはあまり必要とする人がいないと思われることなどから解説を削除しました。
ミュラーリヤー錯視実験の条件ファイルの列名を旧版から変更した点について、解説はもう不要だろうといことで削除しました(7章)。
Buttonコンポーネントの [フォント] に関する注意を追記しました(9章)。
Buttonコンポーネントの [クリック毎に1回実行] は [Routineを終了] がチェックされていると無効になることを追記しました(9章)。
RatingScaleコンポーネントの廃止に伴い、Sliderコンポーネントの解説を書き直しました(9章)。
サンプルプログラムにおいてSliderコンポーネントによる色の変更ができない場合の原因と解決例について補足しました(9章)。
TextBoxコンポーネントを使った文字入力についての解説を追加しました(9章)。
Formコンポーネントの仕様変更に伴いFormコンポーネントの解説を書き直しました(9章)。
formオブジェクトのreset()メソッドを使ってループ内でFormコンポーネントを繰り返し使用できることに言及しました(9章)。
Movieコンポーネントのバックエンドについての記述を更新しました(10章)。
Microphoneコンポーネントについての解説を追加しました(10章)。
Cameraコンポーネントについての解説を追加しました(10章)。
未解説のコンポーネント一覧を更新しました(付録)。
PsychoPyの設定ダイアログの解説を更新しました(付録)。
本書の実験で使用している画像ファイルや実験ファイルは、筆者のwebページ(http://www.s12600.net/psy/python/ppb/)でダウンロードできますのでご利用ください。誤字や内容の誤りの指摘、その他内容についての要望などございましたら、十河までご連絡いただけましたら幸いです。
2022年9月6日 十河 宏行
2023年7月に以下の変更を行いました。
第4章の実験において、標準の単位をcmとしていましたがheightに変更しました。これに伴い刺激のサイズなどのパラメータを見直しました(4章)。
2023年7月14日 十河 宏行
2024年4月5日にPsychoPyバージョン2024.1.1がリリースされました。まだ動作が安定ですが、今後のBuilderによる実験作成を考えるうえで非常に重要な機能が追加されました。本来なら本文全体を見直して第6版を作成すべき状況なのですが、そのための時間を確保することが当分できそうにないので、第5版への付録として2024.1.1の新機能を解説することにしました。2024.1系を使用する人はぜひ付録にも目を通してください。
2024年4月22日 十河 宏行
- 1. PsychoPyの準備
- 2. 刺激の位置や提示時間の指定方法を覚えよう
- 3. 最初の実験を作ってみよう―サイモン効果
- 3.1. 実験の手続きを決めよう
- 3.2. 視覚刺激を配置しよう
- 3.3. キーボードで反応を検出しよう
- 3.4. 条件ファイルを作成しよう
- 3.5. 繰り返しを設定しよう
- 3.6. パラメータを利用して刺激を変化させよう
- 3.7. 実験記録ファイルの内容を確認しよう
- 3.8. 反応の正誤を記録しよう
- 3.9. ルーチンを追加して教示などを表示しよう
- 3.10. 練習問題:練習試行を追加しよう
- 3.11. この章のトピックス
- 3.11.1. 自分のキーボードで使えるキー名を確かめる
- 3.11.2. Builderで使用できない名前を判別する
- 3.11.3. 無作為化と疑似乱数
- 3.11.4. Loopのプロパティ設定ダイアログの [使用する行 $] について
- 3.11.5. $を含む文字列を提示する
- 3.11.6. PsychoPyの時間計測の精度について (上級)
- 3.11.7. コンポーネントの開始・終了時刻をデータファイルに出力しないようにする
- 3.11.8. 「CSV形式のデータを保存(summaries)」・「xlsx形式のデータを保存」で作成される記録ファイルの形式
- 3.11.9. ルーチン新規作成時のテンプレート機能について
- 4. 繰り返し方法を工夫しよう―傾きの対比と同化
- 5. Pythonコードを書いてみよう―視覚の空間周波数特性
- 6. 反応にフィードバックしよう―概念識別
- 7. キーボードで刺激を調整しよう―ミューラー・リヤー錯視
- 8. マウスで刺激を動かそう―鏡映描写課題
- 8.1. この章の実験の概要
- 8.2. Mouseコンポーネント
- 8.3. 実験の作成
- 8.4. psychopy.event.Mouseクラスのメソッドを利用してマウスの状態を取得しよう
- 8.5. リストの要素にアクセスしてマウスカーソルと上下反対にプローブを移動させよう
- 8.6. 刺激の重なりを判定しよう
- 8.7. カーソルの位置を設定し、カーソルの表示ON/OFFを制御しよう
- 8.8. for文を用いて複数の対象に作業を繰り返そう
- 8.9. ルーチンに含まれる全コンポーネントのリストから必要なものを判別して処理しよう
- 8.10. リストにデータを追加してマウスの軌跡を保存しよう
- 8.11. 軌跡データを間引きしよう
- 8.12. ゴール地点でクリックして終了するようにしてみよう
- 8.13. 練習問題1:反転方向切り替え機能とフィードバック機能を追加しよう
- 8.14. 練習問題2: ミューラー・リヤー錯視実験をマウスで反応できるようにしよう
- 8.15. この章のトピックス
- 9. グラフィカルインターフェースを活用しよう
- 10. 音声と動画を活用しよう
- 11. 階段法の手続の実験を作成しよう
- 12. 実験の流れを制御しよう―強化スケジュール
- 13. 無作為化しよう―視覚探索
- 14. 付録