なぜ DTA を SAV に変換するのですか?
.dta と .sav はどちらも変数ラベルと値ラベルを持つ矩形データセットを格納するため、変換の相性が非常に良いです。.sav に変換することで、同僚が Stata をインストールしたり、メタデータが削除される中間的な CSV を介したりすることなく、SPSS でデータセットを直接開くことができます。
DTA から SAV への変換方法
R + haven OPEN-SOURCE
haven をインストールし、read_dta('file.dta') に続いて write_sav(df, 'output.sav') を実行して、ラベルが保持された SPSS 互換ファイルを生成します。
PSPP OPEN-SOURCE
「ファイル」 > 「データのインポート」 > 「Stata」から .dta を開き、「ファイル」 > 「名前を付けて保存」から SPSS 形式で保存します。多くの値ラベルを持つ複雑なデータセットの場合は、R + haven の方が信頼性が高いです。
SPSS APP
「ファイル」 > 「開く」 > 「データ」から .dta を開き(ファイルの種類を Stata に設定)、SPSS 形式で「ファイル」 > 「名前を付けて保存」を実行します。
これらの形式について
品質と注意点
- haven を使用すると変数ラベルと値ラベルが引き継がれます。Stata の値ラベルは、出力される
.sav内で SPSS の値ラベルになります。 - Stata の拡張欠損値 (
.a,.b, ...,.z) は SPSS ではシステム欠損値となり、SPSS のユーザー定義欠損値コードにマッピングすることはできません。 - 新しい Stata 形式のファイル (format 117+、Stata 13 以降) は haven で完全にサポートされています。PSPP で新しいファイルが拒否される場合は、代わりに R + haven を使用してください。
よくある質問
DTA を SAV に変換するために Stata や SPSS のライセンスは必要ですか?
いいえ - R + haven と PSPP はどちらも無料で、ラベルを含む完全な変換を処理できます。
変換後も値ラベルは残りますか?
はい、haven を使用する場合、Stata の値ラベルは出力される
.sav 内で SPSS の値ラベルになります。Stata の拡張欠損値はどうなりますか?
SPSS ではシステム欠損値になります。分析において
.a や .b などを区別する必要がある場合は、.sav を書き出す前に R で解決しておいてください。大きなデータセットでも動作しますか?
R + haven は
.dta ファイルを一行ずつ読み込むため、大きなファイルを処理できます。PSPP は、変数の数が多い非常に大きなデータセットでのテストはそれほど行われていません。