RとM-plusの比較:SEMの表現

M-plusがver5.2にupgradeしましたね。
最近、プラットフォームとしてはもうRで良いんじゃないかと思っていることもあって、昔M-plusで書いたSEMモデルをRに書き起こしてみた。

結論から言って、当たり前のことなんだけど、RでもM-plusと同じ出力を得ることができました。
数値上の誤差も、ほとんど誤差といえる程度の違い。なるほど、これだったらRは十分使用に耐える。

が、比較してみると、やはりM-plusが少し勝るかな。

大きいのは、式の書き方。
Rの書き方はRAMで書くというものだから、いちいち明記しなければならないことが多い。
M-plusは、例えば特に明記しなければ潜在変数間は相関を仮定してくれる。Rの場合は、仮定するかしないかも明記しなければならない。これが結構面倒。

今日はM-plusとRとの比較をずっとしていたんだけど、M-plusで明示していない、暗黙のパスみたいなのを引き忘れていることが結構あったので、そのたびにやり直しをさせられた。

その次に大きいのは欠損値の問題。
Rは相関行列or分散共分散行列を与えるとき、use=”complete.obs”オプションを入れておかないと、欠損値があるところはNAで返してくるので、モデル計算に入る前にエラーが帰ってくる。
M-plusはver5から、自動的にmissingオプションがついたので、missingをコントロールした分析をしてくれる(恥ずかしながら、詳細を吟味していないので、どのような欠損値補完アルゴリズムなのか知らずにやってます)。

その次に大きいのは、カテゴリカル変数の扱いかな。これについては、明日もう一度チェックしてみるつもり。

さてさて、これらの問題はありますが、例えばコマンド一つで欠損値を除外して計算してくれたり、面倒ではあるけれどもはっきりとモデルを表現できる、というのはRのメリットでもあるわけです。
そして何より、フリーです。

Amosみたいなアクティブ・グラフィックなことはできないけど、結果から自動的にモデル図を書いてくれるコマンドもあるわけで。

すげぇなぁ、というところです。

追伸 SPSSやAmosも17にしました。多少起動が早いかな?

日記
連休、やってます

令和になりましたな。 世間は10連休。わたしは初日の土曜日に研究会を入れたし、最後の月曜日は授業日な …

日記
バルサン焚きました

去年の今頃もやったなぁと思いつつ。 家の中にムカデが出るんですよ。家族はみんな虫嫌いで、中でもムカデ …

日記
さようなら平成30年度

大学という年度単位で生きている私どもにとっては,今日がある意味一年の最後の日です。明日は新元号も,科 …