Builder Tips:実験結果のcsvファイルの文字化けを回避する

PsychoPyは結果をcsvファイル(.csv)かExcelファイル(.xlsx)で出力することができます。ただし、csvファイルは全角文字が含まれていると、Excelでファイルを開いた際に文字化けしていることがあります。xlsxファイルであればこの問題は解決されるのですが、1試行ごとの情報を見たい場合にはcsvファイルの出力形式の方が扱いやすいため、csvファイルの文字化けを回避したい人もいるかもしれません。

csvファイルで文字化けが生じる原因は文字コードです。PsychoPyがはき出すcsvファイルはUnicode (UTF-8)という形式ですが、これをExcelがうまく認識してくれないため、文字化けが発生してしまいます。

既に出力されたファイルを文字化けしないようにするには、文字コードをUnicode (UTF-8) BOM付き(あるいはShift-JIS)という形式に変換するのがよいでしょう。csvファイルを、Windowsであればメモ帳、MacOSであればCotEditorなどのエディタと呼ばれるアプリで開き、文字コードを変換してから保存すればExcelで問題なく開くことができるようになります。

CotEditorでのコード変換

CotEditorでの文字コード変換方法

これから実験を行うのであれば、実験プログラムのほうで保存するファイル形式を変換するのが便利でしょう。プログラムのどこかにCodeコンポーネントを設置し、「実験終了時」タブに以下のコードを入力してください。

thisExp.saveAsWideText(filename+'_sjis.csv', encoding='shift_jis')
Codeコンポーネントの記述例

Codeコンポーネントの記述例

これで出力されるcsvファイルがShift JIS形式になりますので、Excelが正確に文字コードを認識できるようになり、全角文字が文字化けしなくなります。試してみてください。