StataにSPSS(.sav)データをインポートする

経済学の分野ではStataを使っている人が多いと思うのですが,社会学などの分野ではSPSSの方がメジャーなようで,利用したいデータがSPSS形式でしか提供されていないことがよくあります。StatTransferというソフトを用いれば,簡単にSPSS形式のデータをStata形式に変換できるのですが,実はお金をかけなくてもSPSS形式のデータをStataに読み込む方法はいくつかあります。

adoファイル:usespssを使う

SPSSのデータを直接Stataに読み込むことができるadoファイルがSergiy Radyakin氏により提供されています。32bit版Stataの場合は,

と入力することによりインストールすることができます。

64bit版に対応したバージョンはベータ版らしく(リリースからだいぶ経っているようなので正式版になることはないかもしれません),ssc installコマンドではインストールできませんが,以下のコマンドでインストールすることができます。

このベータ版はWindowsのみ対応で,MacとLinuxでは使えないようです。私の環境(Windows 10 64bit, Stata 14 MP4)では問題なく動作しています。

使い方は簡単で,

のように,SPSS形式のファイルを指定してやるだけで読み込めます。

文字エンコードの変換

日本語が含まれたデータを読み込むと,日本語部分が文字化けしてしまいます。Stata 14はユニコードに対応しており日本語を扱うことができるのですが,SPSS のデータファイルは文字コードがユニコードではなくShift JISであるためです。これはSPSSだけではなく,Stataの13以前のバージョンなどでも同様で,これらのソフトで作成したデータはユニコードに変換する必要があります。

Stata 14はデータの文字コードを自動で認識してくれませんが,文字コードをユニコードに変換するコマンドは用意されています。文字コードの変換方法については,ライトストーン社の解説がありますので,そちらを参考にしてください。

ざっくりとやり方をまとめておくと,spssuseコマンドでSPSS形式のファイルをStataに読み込み,文字化けしたままの状態で.dtaファイルとして保存します。その後,unicode_encoding_setコマンドで変換前の文字コードを指定し,unicode_translateコマンドでファイルの文字コードを変換します。

 

 

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です