はじめに
jsPsych でデータ保存と言えば、やはりローカルの自分PCにCSV形式で保存する事が多いかと思いますが、FAQとも言える、いつもの話題があります。
「Excelで開いたら文字が化けてる」
これです。 文字は化けないしデコード失敗しているだけでしょとツッコミたくなるものの、何はともあれ読める日本語で表示されないと気分が良くありません。
こんな状態を解決します。
実験結果はブラウザのダウンロードフォルダに入っていますが、CSVファイルは Excel に紐づいているので、こんな表示になっています。
これをダブルクリックして Excel を開くと、
このように、意味不明の文字列が表示されてしまいます。
原因
jsPsych は、実験結果を UTF-8 という形式で保存します。
UTF-8 でファイル保存をする際に、素の状態のものと、BOMという目印を付けたものがあるのですが、 jsPsych は素の UTF-8 を使用するのに対し、Excel が CSV ファイルを読む時は、BOM付きでなければ UTF-8 と判断する事ができません。 無理やり表示しようとした結果、意味不明の文字として表示されてしまいます。
これは Excel の歴史と伝統と過去資産のしがらみからだと思われます。
やること
jsPsych の実験結果ファイルを、Windowsのメモ帳で開いて、BOM付きUTF-8で保存します。
あとは Excel で普通に開けるようになります。
メモ帳を使った手順
1.実験データのアイコンを、右クリック
ここで表示されるメニューから、
「プログラムを開く」→ 「メモ帳」
を選択します。
2.メモ帳での表示
メモ帳では、日本語が読める状態でなっていますが、これをBOM付きUTFとして保存します。
3.名前を付けて保存からの文字コード指定
「ファイル」→「名前を付けて保存」を選ぶと、下の部分で文字コードを指定できます。
ここで「UTF-8(BOM 付き)」
を選んで「保存してください。」
これで準備は完了です。
4.Excel で開く
BOM付きUTF-8として保存した実験ファイルをダブルクリックすると、日本語が読める状態になります。
その他の方法
ここまで、ちょっとまどろっこしい事と、Macの人はメモ帳を使えないので他の方法も試してみました。
他の方法その1 Google Sheetを使う
Google が無償で提供している Excel 風のサービスの、Google Shhet を使ってみます。
https://www.google.com/intl/ja_jp/sheets/about/
1. 実験ファイルのアップロード
ここで、「ファイルを開く」から実験ファイルをアップロードしてみます。
Google Sheets では問題なく読み込み、表示ができます。
2.エクセル形式でのダウンロード
よほど特殊な用途でもない限り、わざわざ Excel を使わなくても Google Sheets で十分な気もしますが、使い勝手も若干違うしやはり Excel で使いたいという場合はエクセル形式でダウンロードします。
「ファイル」→ 「ダウンロード」から「Microsoft Excel (.xlsx)」を指定してください。
ダウンロードしたファイルはExcel形式になっていて、ダブルクリックして開くと問題なく日本語が表示されて使う事ができます。
他の方法その2 Libre Office を使う
Libre Officeという、無償で利用できるソフトがあるので、こちらを利用してみます。
https://ja.libreoffice.org/
準備
上記の Libre Office 公式ページからダウンロードしてインストールします。
一部機能はJREのインストールも必要だった気がしますが、たぶんしなくても大丈夫です。
Libre Office がインストールされていると、実験ファイルのフォルダも Excel 風の、Libre Office Calc のアイコンになっています。
これをダブルクリックすると、
Libre Office では何もしなくても jsPsych の実験ファイルを表示する事ができます。
終わりに
「自分で使用するときは、Libre Office で読み込んで Excel ファイルで保存」に落ち着きました。
一度インストールさえしてしまえば一番手間がかかりません。
その他にも大量に作業する場合は、こういったフリーソフトの利用が便利そうです。
https://www.vector.co.jp/soft/winnt/util/se493100.html
Excel には、どんな歴史と過去があるのか知りませんが、BOM無しUTF-8を読めるようにしてもらいたいです。