.. _chapter-prepare-psychopy: PsychoPyの準備 ======================================================================= PsychoPyってなに? -------------------------- PsychoPyとは、パーソナルコンピューター(PC)を使って心理学実験を行うためのツールです。心理学実験では刺激画像をぴったり0.2秒間提示するとか、刺激音声が提示されてからボタンを押すまでの反応時間をミリ秒の精度で記録するといった作業が求められることがあります。こういった手作業で行うのは困難ですが、PCを使うとかなり正確にコントロールすることができます。 また、このような時間的精度が必要ない実験でも、何種類もの刺激を20回ずつ無作為な順序で提示するといった作業を、手作業で間違えずにおこなうのは大変ですが、PCはこういった作業が得意です。 とはいえ、多くの場合「こんな実験をしたい」と思いついた実験を実際にPCにおこなわせようとすると、手持ちのアプリケーションのみではどうにもならず、プログラムを書く必要が出てきます。 PsychoPyはこのプログラムの作成と実行を支援してくれるアプリケーションで、簡単な手続きの実験であれば自分でプログラムを書かずに実現することが出来ます。 さらに、少しプログラミングを勉強すれば、PsychoPyの標準的な機能では実現できない作業内容だけプログラムを書くといったことが可能です。 Microsoft WindowsやApple MacOSなど、複数のオペレーティングシステムで動作しますので、自分はWindowsを使っているけど共同研究者はMacOSを使用しているといった場合でも、両方の環境で実行できる実験を作成できます。 この章では、PscyhoPyをインストールする手順を解説します。そして、PsychoPyが3つのアプリケーションで構成されていることを確認し、それぞれがどのような役割を果たすのかを概説します。 .. _section-install-standalone-psychopy: PsychoPyをインストールしよう(Standaloneインストーラー編) ------------------------------------------------------------ PsychoPyをインストールする方法は複数ありますが、初心者にお勧めなのは「Standaloneインストーラー」を用いる方法です。以下の3つのいずれにも当てはまらない方(または意味がわからない方)はStandaloneインストーラーでのインストールをお勧めします。 - インストール予定のPCですでにPythonの実行環境を構築していて、そこへPsychoPyを導入したい。(pipでのインストールがお勧め: 「:numref:`{number}:{name} ` 」参照) - UbuntuなどのLinux系OSで使用したい。 (pipでのインストールがお勧め: 「:numref:`{number}:{name} ` 」参照) - 研究室や家庭で他の人と共同で使用しているPCで使用したいが、勝手にソフトウェアをインストールできない。(ポータブル版がお勧め: 「:numref:`{number}:{name} ` 」参照)) StandaloneインストーラーはPsychoPyの公式webページからダウンロードできます。URLは以下の通りです。 - https://www.psychopy.org/download.html .. _fig-download-recommended: .. figure:: fig01/download-recommended.png :width: 80% PsychoPyのダウンロード画面。使用しているPCのオペレーティングシステムに合わせてお勧めのバージョンをダウンロードするボタンが表示されます。 :numref:`fig-download-recommended` はダウンロードページを開いた様子です。青色で表示されているボタンをクリックすると、PsychoPyの開発チームがお勧めするバージョンのStandaloneインストーラーのダウンロードが始まります。 2025年2月現在、Windows及びMacOSでアクセスすると、:numref:`fig-download-recommended` のように青いボタンが2つ表示されます。これは過去のバージョンのPsychoPyで作成した実験を動かす必要がある人向けの compatibility+ と、その必要がない人向けの modern の2種類が公開されているためです。 どちらがよいかわからない人は、とりあえずmodernを試してみることをお勧めします。 研究室の先輩や指導教員が昔作った実験を動かす必要が生じて、 modern ではうまく動かないという場合に改めて compatibility+ を試すとよいでしょう。 なお、これも執筆時点(2025年2月)での筆者の印象ですが、ここ数年、新機能が導入されてまだ十分に安定性が確認されていないバージョンが「お勧めのバージョン」として表示されてしまう状態が続いています。青いボタンのすぐ下にある For all versions see the PsychoPy releases on github と書かれているリンクをクリックすると、異なるバージョンのインストーラーを入手することが出来ますので、敢えて少し前のバージョンを選択するのもよい選択だと思います(「少し前」の判断については「:numref:`{number}:{name} ` 」を参照してください)。 「大学の研究室では古いバージョンを使用していて、それと同じものを使用したい」とか「実験に使用する装置が古いPythonでなければ動かない」といった事情がある場合も、For all versions see the PsychoPy reelases on githubのリンクから目的のバージョンのインストーラーを探すと良いでしょう。 Windowsでは、ダウンロードしたファイルをダブルクリックするとインストーラーを起動することができます。Windowsの保護機能によって :numref:`fig-smartscreen-protect` のような警告が出ることがありますが、「詳細情報」をクリックすると「実行」ボタンが出現して実行することができるようになります。 .. _fig-smartscreen-protect: .. figure:: fig01/smartscreen-protect.png :width: 50% Windowsではインストーラーの実行時に警告が表示されることがあります。 インストールが無事に終了したら、スタート画面を表示してみましょう。PsychoPy3という項目ができているはずです(:numref:`fig-startmenu-psychopy` )。このアイコンをクリックするとPsychoPyが起動します。 .. _fig-startmenu-psychopy: .. figure:: fig01/startmenu-psychopy.png :width: 50% インストールが終了するとスタートメニューの「すべてのアプリ」にPsychoPy3というグループができています。この中にPsychoPy3というアイコン(BuilderとかCoderとか後ろについていないもの)がありますのでこれを選択して起動します。 MacOSの方は、ダウンロードしたdmgファイルを開くとディスクイメージが開きますので、PsychoPyのアイコンをアプリケーションフォルダにドラッグ&ドロップしてください(:numref:`fig-install-macos`)。これだけでインストールは終了です。 .. _fig-install-macos: .. figure:: fig01/install-macos.png :width: 50% MacOSではスタンドアローンインストーラーを起動するとこのようなウィンドウが表示されます。PsychoPyのアイコンをApplicationsのアイコンにドロップするとインストールできます。 さて、PsychoPyを実行すると、:numref:`fig-builder-coder-runner` に示すウィンドウが画面に出現します。:numref:`fig-builder-coder-runner` 左のように、ウィンドウ内が三分割されていて右側にアイコンが表示されているウィンドウがBuilderです。CoderとRunnerは似ていますが、Runnerはウィンドウ右端にアイコンが縦に並んでいるのが特徴です。本書では主にBuilderとRunnerを使用します。なお、スタートメニューに作られたアイコンのうち、PsychoPy Builder、PsychoPy Coder、PsychoPy Runnerと書かれたものは、それぞれBuilder、Coder、Runnerのウィンドウのみを開いて起動します。後から他のウィンドウを開かなければ行けなくなった場合は、ウィンドウ上部のメニューの「ビュー」から「Builderを開く」「Coderを開く」「Runnerを開く」から開くことができます。 .. _fig-builder-coder-runner: .. figure:: fig01/builder-coder-runner.png :width: 100% PsychoPy Builder(中央下)、Coder(左)、Runner(右)。Builderはウィンドウ内が三分割されていて、右側にアイコンが並んでいます。CoderとRunnerは似ていますが、Runnerはウィンドウ右端にアイコンが並んでいるのが特徴です。 使用しているパソコンが日本語環境のものであれば、メニューなどは自動的に日本語で表示されますが、英語で表示されてしまう場合には、ロケールを設定する必要があります。「:numref:`{number}:{name} ` 」を見て設定してください。日本語環境のパソコンを使用しているけどあえて英語でメニューなどを表示させたいという場合にもロケールの設定は有効です。 なお、 **WindowsでPsychoPy 2024.2.5などのバージョン2024系をインストールした場合は、ロケールの設定が正しくても英語で表示されてしまう不具合があります** が、この不具合の修正についても「:numref:`{number}:{name} ` 」をご覧ください。 さて、これでPsychoPyのインストールが完了しましたが、解説を進める前に確認しておきたいことが2つあります。 まず、皆さんがBuilderを使って実験を作成するPCにはMicrosoft Excel (以下Excel)がインストールされていますか? BuilderではExcel 2007以降でサポートされたxlsx形式のExcelファイルを利用して、実験条件の設定を簡単に行うことができます。このテキストでも :numref:`第%s章 ` 以降でExcelを利用します。 Excelを持っていない場合は、フリーソフトウェアのLibreOffice Calcを利用することもできます。LibreOfficeは以下のURLでダウンロードすることができます。 - http://www.libreoffice.org/ - http://ja.libreoffice.org/home/ (日本語) 日本語版のwebページをブラウザで開いた様子を :numref:`fig-download-libreoffice` に示します。「LibreOfficeをダウンロード」をクリックしてダウンロードページへ移動し、メインインストールパッケージとヘルプパッケージをダウンロードします。ダウンロードが終了したらメインインストールパッケージ、ヘルプパッケージの順にダウンロードしたインストーラーをダブルクリックしてインストールを済ませてください。LibreOffice CalcはExcelと比べてメニューやツールバーのレイアウトが異なるほか、機能面でもいろいろな違いがありますが、本書で解説している用途の範囲では十分にExcelの代わりとして使えます。 .. _fig-download-libreoffice: .. figure:: fig01/download-libreoffice.png :width: 100% LibreOfficeの日本語版webページ(左)。「LibreOfficeをダウンロード」をクリックするとダウンロードページ(右)へ移動するのでメインインストールパッケージとヘルプパッケージをダウンロードします。 Windowsユーザーの方は、もう一つの確認していただくポイントがあります。Excelのファイルをデスクトップに新規作成してみてください。Excelがインストールされていない場合はテキストドキュメントなどでも構いません。ファイル名の最後に.xlsx(テキストドキュメントなら.txt)という文字列が表示されているでしょうか、それとも表示されていないでしょうか(:numref:`fig-show-file-extension`)。このファイル名の最後についている「ピリオド+英数文字」を **拡張子** と呼びます。拡張子はファイル名の一部で、ファイルの内容を示す記号として用いられます。Windowsは拡張子に基づいてファイルを編集するアプリケーションを決定するため、拡張子をうっかり変更してしまうとどのアプリケーションで編集すればいいのかわからなくなってしまいます。このようなトラブルを防ぐために、Windowsの標準設定では拡張子を表示されないようになっています。ところが、拡張子が表示されていないと次の章からの解説が非常にわかりにくくなってしまいますので、次の章へ進む前に拡張子が表示されるように設定しておいてください。Windows11の場合は、エクスプローラーのウィンドウの上部の「表示」メニューから「表示」という項目を選択し、「ファイル名拡張子」という項目にチェックをつけてください。 .. _fig-show-file-extension: .. figure:: fig01/show-file-extension.png :width: 100% Windows10で拡張子が表示されていない時の表示方法。 チェックリスト - PsychoPyを起動できる。 - CoderやRunnerのウィンドウからBuilderのウィンドウを開くことができる。 - ExcelまたはLibreOffice Calcのどちらかを起動できる。 - ファイルの拡張子を表示できる。 .. _section-how-psychopy-works: PsychoPyのしくみ ---------------------------------------------------------------------- 前節でPsychoPyを起動するとBuilder, Coder, Runnerという3つのウィンドウが開くことを確認しましたが、それぞれの役割を理解するにはPsychoPyがどのような仕組みでPCを用いた心理学実験を実現しているのかを知っておく必要があります。 .. _fig-how-psychopy-works: .. figure:: fig01/how-psychopy-works.png :width: 80% Psychopy Builder, Coder, Runnerの関係。Builderはアイコンなどで表現された視覚刺激や :numref:`fig-download-libreoffice` はBuilder, Coder, Runnerの役割を模式的に示したものです。 PCに何かを行わせるには、その作業手順を記述した **プログラム** を作成する必要がありますが、PCが直接理解することが出来る言語(機械語)は人間にとって読み書きが非常に困難なので、人間にも読みやすく機械語に翻訳も出来るように設計されたプログラミング言語を使って記述するのが一般的です。 皆さんがPCやスマートフォンで使用している多くのアプリケーションは、誰かがプログラムを書いて機械語に翻訳した形で配布されています。 一方、心理学実験に限らず、研究場面では人が読み書きできるプログラミング言語で書かれたままのファイルを、使いたいときにその場で機械語に翻訳するという方法がよくとられています。 理由はいくつかあるのでしょうが、研究場面では実行した結果を見て内容を修正したりといったことがよくおこなわれるので、いちいち機械語に翻訳したファイルを作成するよりも身軽に作業できる点が大きいと思います。 この方式でプログラムの翻訳をおこなうソフトウェアを **インタプリタ** と呼びます。インタプリタで実行することを前提にプログラミング言語で作業内容を記述したファイルを **スクリプト** と呼ぶことがあります。本書では以後このスクリプトという用語を使いますので覚えておいてください。 インタプリタを使ってプログラムを実行するには、「1. スクリプトを書く」、「2. インタプリタを実行できる環境を用意して、スクリプトを実行する」の2つの作業が必要ですが、PsychoPy Builderは「スクリプトを書く」という作業を肩代わりしてくれるアプリケーションです。 Builderのウィンドウの右側には、視覚刺激やキーボード、マウスなどを示すアイコンがたくさん並んでいて、これらを組み合わせて実験を作成することができます。 作成した実験はPsychoPy独自の形式で保存され、実行するときに自動的にスクリプトに変換することができます。 Builderによって変換されたスクリプトを実行する役割を担うのがPsychoPy Runnerです。 Runnerはスクリプトに対応する適切なインタプリタを起動して実験を自動的に実行するほか、エラーメッセージの受け取ったり実験を中断したりといった機能も持っています。 BuilderとRunnerを組み合わせれば、実験の設計から実行まで一連の作業をPsychoPyでカバーすることができます。 それでは残りひとつのCoderは何かというと、プログラミングの知識や経験がある人が、Builderを使わずに自分でスクリプトを書くためのエディタ(テキスト編集アプリケーション)です。 プログラミング経験が豊富な人ならすでに自分のお気に入りのエディタを持っていることも多いと思いますが、CoderはRunnerと連携してスクリプトを実行する機能を持っていますので、スクリプトは使い慣れた別のエディタで書いて、実行してみたり少し修正したりする場合だけスクリプトをCoderで開くといった使い方が便利なのではないかと思います。 Builderで実験を作成するなら基本的にはCoderを使う必要はないのですが、Builderを使いこなせるようになってくると「自分が設計したこの実験はどういうスクリプトに変換されるのかな」ということを確認したくなる場合があります。そういった時にCoderを使うとさっとスクリプトを開くことができて便利です。 本書ではBuidlerとRunnerの使い方を解説しますので、とりあえず「Builderで実験を作ってスクリプトに変換し、そのスクリプトをRunnerで実行する」と覚えておいてください。 .. _fig-py-js: .. figure:: fig01/py-js.png :width: 80% Psychopy Builder, Coder, Runnerの関係。Builderはアイコンなどで表現された視覚刺激やキーボード等のパーツを組み合わせて実験を作成する機能と、作成された実験をスクリプトに変換する機能を持ちます。Runnerはスクリプトを実行、中断したりエラーメッセージを受け取って表示したりする機能を持ちます。Coderは自分でスクリプトを書ける人のためのエディタとしての機能を持っています。本書ではBuilderとRunnerを使って実験を作成、実行する方法を中心に解説します。 以上でPsychoPyを使い始める前に知っておきたいBuilder、Coder、Runnerの役割についての解説はおしまいですが、最後にBuilderが出力するスクリプトが使用しているプログラミング言語について触れておきます。 実は、ここまで敢えて具体的なプログラミング言語やインタプリタの名前を避けて解説してきたのですが、これは現在のPsychoPyが2種類のプログラミング言語を使用するからです。 PsychoPyはもともとPythonというプログラミング言語用のパッケージとして開発され、BuilderとRunnerはPythonで書かれたスクリプトを作成し、Pythonインタプリタを用いて実験を実行していました。 しかし2010年代後半にWebブラウザとインターネットを用いて遠隔地にあるPCのブラウザ上で実験をおこない、結果をインターネット上のサーバに保存するという **リモート実験** や **オンライン実験** と呼ばれる方式の実験を作成する機能がをPsychoPyに導入されました。 Webブラウザ上で実験を実行するにはPythonよりもJavaScriptという言語を使用する方が都合がよいため、Pythonへの変換機能とは別にJavaScriptへの変換機能が追加されたのです。 以上の状況を整理すると :numref:`fig-download-libreoffice` のようになります。 以後、本書では、Pythonスクリプトを出力して目の前にあるPC(ローカルPC)で実験を実行する形式を **ローカル実験** 、JavaScriptスクリプトを出力して場所を問わずブラウザ上で実験を実行する形式をオンライン実験と表記します。 本書は主にローカル実験の作成手順を解説しますが、BuilderやRunnnerにはオンライン実験のためのメニューや設定項目がありますので、ローカル実験とオンライン実験の違いと、それぞれにPythonとJavaScriptが対応しているということは頭の片隅に置いておいてください。 それでは、次章から実際にPsychoPy Builderを使用してみましょう。 チェックリスト - BuilderとRunnerの役割を説明できる。 - スクリプトという語の意味を説明できる。 - ローカル実験とオンライン実験の違いを説明できる。 - BuilderがPythonとJavaScriptの2種類のスクリプト変換に対応している理由を説明できる。 この章のトピックス ---------------------------------------------- .. _topic-psychopy-version-policy: PsychoPyのバージョン番号の規則とバージョンの選択について ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 多くのオープンソースソフトウェアではセマンティックバージョニング(semantic versioning)と呼ばれる規則に従ってバージョン番号が付けられています。これは **メジャーバージョン** 、 **マイナーバージョン** 、 **パッチバージョン** と呼ばれる3つの数値の組み合わせでバージョンを表すもので、例えば3.10.8なら3がメジャーバージョン、10がマイナーバージョン、8がパッチバージョンです。"."は小数点ではなく数値の区切り記号なので、小数のように繰り上がりません。例えば3.9の次のマイナーバージョンは3.10(さん てん じゅう)となります。 文脈上、パッチバージョンを省略しても問題ない場合は、3.10のようにメジャーバージョンとマイナーバージョンのみ書くこともあります。 PsychoPyのバージョン番号の規則はセマンティックバージョンとは少し異なるのですが、PsychoPyのベースとなるPythonがセマンティックバージョンに従っており知っておいて損はしませんので、もう少し解説しておきます。 セマンティックバージョニングにおいては、メジャーバージョンは過去のバージョンと互換性がない変更が加えられた時に増加します。例えばPythonは2008年にバージョン2.6の次のバージョンとして2.7と3.0が公開されました。2.7は2.6用に書かれたプログラムを動かすことが出来ますが(これが「過去のバージョンと互換性がある」という意味)、3.0は2.6用のプログラムを動かせない場合があります。メジャーバージョンが異なることによって、利用者に「3.0では2.6用プログラムの動作を保証されていませんよ」とわかるようになっているわけです。 これに対してマイナーバージョンは、「新機能が加わったけれども過去のバージョンとの互換性はありますよ」という時に増加します。ですから、再びPythonを例に挙げると、2.7には2.6にない新しい機能があります。したがって2.7の新機能を使って書いたプログラムは2.6で動作しません。しかし先に述べた通り2.6用のプログラムは2.7で動かすことが出来ます。 最後のパッチバージョンは、バグを修正しただけで機能的には何ら変化していない(新機能が追加されたり既存の機能が削られたりしていない)時に増加します。3.10.0, 3.10.1, 3.10.2,... はいずれもパッチバージョンが異なるだけなので、バグさえなければ原則としてまったく同じ機能を持ちます。 以上、セマンティックバージョニングを踏まえたうえで、PsychoPyのバージョン番号の規則について説明します。PsychoPyも同様に3つの数値の組み合わせでバージョンを表しますが、2020年から最初の数値(メジャーバージョンにあたる)は公開された年を表すことになりました。2020年以降、毎年新しいバージョンが公開されているため2020, 2021, 2022...とバージョン番号が変わっていますが、これらは **過去バージョンとの互換性の有無を表していません。** ですから2021で作成した実験を2022や2023で実行できる **かも知れません** 。いつ公開されたバージョンかわかりやすいのは良いことなのですが、互換性という観点からはわかりにくくなってしまいました。 2番目と3番目の数値は、ほぼセマンティックバージョニングのマイナーバージョンとパッチパージョンに対応しています。ですから2024.1.0から2024.2.0は機能的な変更がありますが、2024.1.0から2024.1.1はバグの修正のみです。 本文で「少し前」のバージョンをどう判断するかという話題がありましたが、例えば現在「お勧め」されているバージョンが2024.2.4なら、2024.1や2024.0は少し前と言えるでしょう。一般論として、パッチバージョンは新しいほどバグが修正されているので、パッチバージョンは一番新しいものが良いです。大きな変更が加えられた直後にはバグが多発しやすいので、大きな変更が加えられる直前のバージョンで最もパッチバージョンが新しいものが狙い目です。先述の通りPsychoPyのバージョン番号の規則では1つ目の数値が必ずしも大きな変更を表していないのですが、ここ数年の傾向としてやはり1つ目の数値が変わるタイミングで大変更が行われることが多いので、一年前のもので最も新しいバージョンを選ぶというのも悪くないでしょう。例えば「お勧め」されているバージョンが2024.1.2とすると、2024年の一年前である2023から始まるものを確認します。すると2023.2.3が2023から始まるもので最も新しいバージョンなので、2023.2.3を試してみるといった具合です(ちなみに2025年2月現在「お勧め」されているのは2024.2.4ですが、これは恐らく2024で最後のバージョンとなると思われるので、2024.2.4をそのまま試すのもよいでしょう)。 すでにある程度PCでの心理学実験作成の経験があって、きちんとバージョン間の違いを理解して選択したい場合は、Changelog (https://www.psychopy.org/changelog.html) を読んでみてください。 .. _topic-change-application-locale: ロケールの変更 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Builderのメニュー等の表示に使用される言語を変更したい場合は、ロケールを設定してください。CoderでもBuilderでも、ウィンドウの上部に :numref:`fig-change-application-locale` に示す工具のアイコンのボタンがあります。これをクリックするとPsychoPyの設定ダイアログが開きます。「アプリケーション」というページに「ロケール」という項目があります。 初期状態ではロケールは空白となっています。この場合、PsychoPyは使用中のパソコンの言語設定を利用して表示に用いる言語を決定しようとします。PsychoPyによって選ばれた言語と異なる言語で表示させたい場合は、ロケールをクリックして表示される言語の一覧から希望のものを選んでください。 .. _fig-change-application-locale: .. figure:: fig01/change-application-locale.png :width: 80% ロケールの設定。 .. _topic-update-psychopy: なお、 **PsychoPy 2024系のWindows用スタンドアローンインストーラーには英語以外の言語用の翻訳ファイルが含まれていないというバグ** があります。筆者のWebサイトに修正スクリプトを下記URLにアップロードしてありますのでご利用ください。 - http://s12600.net/psy/etc/python.html#fixpsychopy2024translation 筆者が配布しているPortable PsychoPy 2024.2.5はこの問題に対処済みですので、ポータブル版でよければこちらを利用していただくという選択肢もあります。「:numref:`{number}:{name} ` 」を参照してください。 .. _topic-install-psychopy-pip: PsychoPyをインストールしよう(pip編) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WindowsやMacOSのスタンドアローンパッケージを使用しない場合は、Pythonのパッケージマネージャであるpipを使用してPsychoPyをインストールするのが簡単です。 Anaconda/Minicondaを使う方法や、Ubuntu等のLinuxディストリビューションにパッケージとして用意されているものをインストールする方法もありますが、本書ではお勧めしません。 2025年2月現在、Pythonのバージョンは3.10が推奨されています。3.12や3.13などの新しいバージョンではPsychoPyが動作しない可能性がありますので(これらのバージョンに対応する依存パッケージが配布されていないなど)、場合によってはそれらの新しいバージョンのPythonとは別に3.10の実行環境を用意しないといけないかもしれません。 以下、 ``python`` というコマンドでPython3.10のインタプリタを起動できるという前提で話を進めます。読者の皆さんの環境によっては ``py`` , ``py -3.10`` ``python3`` とかかも知れませんので読み替えてください。 まず、PsychoPy以外の用途にもPythonを使用している方は、PsychoPy用の環境を用意しておくとパッケージの依存関係などで悩まずに済むので便利でしょう。 以下はWindowsでユーザープロファイルフォルダ(通常、C:\Users\ログインユーザー名)にvenv_psychopyという名前のフォルダを作ってそこにPsychoPy用の仮想環境を作り、仮想環境を有効にする例です。 :: python -m venv %USERPROFILE%/venv_psychopy call %USERPROFILE%\venv_psychopy\Scripts\activate MacOSやLinuxなら以下のように.から始まるフォルダ名にして隠しフォルダにしておくと邪魔にならなくてよいかも知れません。この辺りは好みでどうぞ。 :: python -m venv ~/.venv_psychopy source ~/.venv_psychopy/Scripts/activate 仮想環境が有効になった状態でpipを使ってPsychoPyをインストールします。 :: python -m pip install psychopy インストール完了後にPsychoPyを起動するには、以下のようにpsychopy.app.psychopyAppをスクリプトとして実行します。 もし ModuleNotFoundError: No module named 'psychopy' と表示されてPsychoPyが起動しないのなら、おそらくpipによるインストールが失敗しています。 失敗する理由はさまざまですが、筆者の個人的な経験では、PsychoPyが依存しているパッケージのビルドに必要な開発環境が整っていない場合が多いです。 エラーメッセージを注意深く読み、足りないものを判断してインストールしてから、もう一度pipでのPsychoPyのインストールを試みてください。 :: python -m psychopy.app.psychopyApp PsychoPyを終了した後、仮想環境を抜ける時には ``deactivate`` を実行してください。dactivateせずにシェルを閉じても問題ありません。 Windowsでアイコンをダブルクリックするだけで起動できるようにしたい場合は、以下のようなバッチファイルを作成すると良いでしょう。 最後のdeactivateは少なくとも現状のdeactivateの処理内容では不要ですが、今後どうなるかわかりませんので実行しておいた方がよいでしょう。 :: call %USERPROFILE%\venv_psychopy\Scripts\activate python -m psychopy.app.psychopyApp deactivate なお、2025年2月現在、PsychoPyの公式ページでLinux系OSでのインストール方法として、仮想環境に入った後以下のようにリポジトリ内のinstallPsychoPy.pyというスクリプトを実行する方法が紹介されれています。これはPsychoPyの依存パッケージのbuildに必要なパッケージなどのインストールをしたうえでpipでPsychoPyをインストールするものです。 EXPERIMENTAL(実験的)ということで皆さんの環境で動作するとは限りませんが、Linux系OSへインストールしようとしている方は試してみるのもよいと思います。 :: python -c "$(curl -fsSL https://raw.githubusercontent.com/psychopy/psychopy/dev/installPsychoPy.py)" .. _topic-install-portable-psychopy: PsychoPyをインストールしよう(Portable PsychoPy編) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Portable PsychoPyは、USBなどにインストールして持ち運べるWindows用Python実行環境であるWinPythonにPsychoPyをインストールしたものです。 筆者が個人的に作成して公開しており、PsychoPy公式のものではありません。 大学の情報センターなどのPCのようにユーザーが勝手にアプリケーションをインストールできない環境でPsychoPyを使用したい場合や、研究室などで複数台のPCを管理していてそれぞれにPsychoPyをインストールして管理するのが大変な場合などに便利です。配布URLは以下の通りです。 - http://s12600.net/psy/etc/python.html#portable ダウンロードしたファイルはZip形式で圧縮されていますので、USBメモリなどに展開してください。展開したファイルの中にPortablePsychopyLauncher.exeという実行ファイルがあり、これをダブルクリックするとPsychoPyが起動します。 詳しい使い方は上記配布ページを見ていただきたいのですが、ひとつだけ注意しておきますと、このPortable PsychoPyはUSBメモリに入れて持ち運ぶことができますが、PsychoPy実行時に自動的に作成される設定ファイルはPC内のフォルダ(%APPDATA%\psychopy3)に作成されます。ですから、初めてPortable PsychoPyを使用するPCで起動したときには初期設定の状態になりますし、あるPC上で設定変更を行っても別のPCにその設定は持ち越されません。 一応、Portable PsychoPyには「終了時にPCからUSBメモリ上に設定ファイルをコピーする」、「起動時にUSBメモリから設定ファイルをPCへコピーする」という機能をオプションで用意していますが、この機能を使う場合はPsychoPyを終了した後、コピーが終わるまでUSBメモリを抜かないようにしてください。 やはりPortable PsychoPyのオプションで、コピーを含めて正常にPsychoPyが終了した時にメッセージを表示する機能を用意していますので、この機能を有効にしておけばコピーが終了したのを確認することができます。 .. _topic-psychpy-psychojs-library: ライブラリとしてのPsychoPy/PsychoJS (上級) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ あまり細かい話をすると初心者の方を混乱させてしまうかもしれないと思って本文では触れなかったのですが、PsychoPyはもともと心理学実験作成アプリケーションではなく、心理学実験を作成するためのython用ライブラリとしてスタートしました。BuilderやCoder, RunnerはライブラリとしてのPsychoPyを使ったプログラミングを支援する「おまけ」に過ぎないのですが、今では「おまけ」の方が主役になってしまっているように筆者は感じています。Builderでさっと実験を作って実行するという使い方をするだけなら厳密に区別する必要はないのですが、 :numref:`第%s章 ` 章以降でCodeコンポーネントの使い方を解説する際には、おそらくきちんと区別