No.16260 Graphvizでパス解析の標準解を表示させるには  【ちゃこ】 2012/01/22(Sun) 22:06

お世話になっております。
ご教授ください。パス解析を行っております。練習として下記URLのものを利用しています。
http://www.okada.jp.org/RWiki/?R%A4%C7%B6%A6%CA%AC%BB%B6%B9%BD%C2%A4%CA%AC%C0%CF%A1%A6%B9%BD%C2%A4%CA%FD%C4%F8%BC%B0%A5%E2%A5%C7%A5%EB
ところがなぜか非標準解しか描くことができません。standardized.coeeficientsで求めた値をpathDiagramで表示させるにはどのようにしたらよろしいでしょうか?
私自身のRのスクリプトは下記の通りです。
モデルは
instruction がperceptionとcomprehensionに影響を与え,perceptionとcomprehensionがperformanceに影響を与える
を考えています。
共分散 <- readMoments(names=
c("perception", "instruction", "comprehension", "performance"))
47.21
16.36 14.55
15.24 12.47 18.47
0.05 0.27 0.51 0.22

パス解析 <- specifyModel()
instruction -> comprehension, a1, NA
instruction -> perception, a2, NA
comprehension -> performance, a3, NA
perception -> performance, a4, NA # 因果
instruction <-> instruction, cov1, NA
comprehension <-> comprehension, cov2, NA
perception <-> perception, cov3, NA
performance <-> performance, cov4, NA
comprehension <-> perception, cov5, NA # 共分散

model <- sem(パス解析, 共分散, 30)

summary(model, digits=4)

print(standardizedCoefficients(model), digits=3)

pathDiagram(y, "test", ignore.double=FALSE, edge.labels="values", digits=3, node.font=c("Osaka", 10))

No.16261 Re: Graphvizでパス解析の標準解を表示させるには  【青木繁伸】 2012/01/23(Mon) 07:51

pathDiagram の引数に standardize がありますよ。

No.16262 Re: Graphvizでパス解析の標準解を表示させるには  【ちゃこ】 2012/01/23(Mon) 12:57

青木先生

お返事ありがとうございます。ありました!!

No.16330 Re: Graphvizでパス解析の標準解を表示させるには  【コロン】 2012/02/03(Fri) 15:52

お世話になります。

Mac版で上記内容を行っていましたが,Windows版でも行ってみました。参考としているサイトから関数をそのまま貼り付けて実行をしたのですが,下記エラーが出てしまいます。

pathDiagram(ans, ignore.double=FALSE, edge.labels="values", digits=3, node.font=c("C:\WINDOWS\Fonts\msmincho.ttc", 10))
エラー: "C:\W"で始まる文字列の中で '\W' は文字列で認識されないエスケープです

これはなにが問題なのでしょうか?Windows 7, Rは最新版です。

ご指導お願いいたします。

No.16331 Re: Graphvizでパス解析の標準解を表示させるには  【コロン】 2012/02/03(Fri) 15:54

補足いたします。

エディタで入力をしているのですが,なぜか\が右下がり/に変わっています。

よろしくお願いいたします。

No.16333 Re: Graphvizでパス解析の標準解を表示させるには  【青木繁伸】 2012/02/03(Fri) 16:52

> なぜか\が右下がり/に変わっています。

どちらが右下がりといっているのか???

Windows の場合,パスの区切り記号は \ 記号。そして,それは欧米ではバックスラッシュ。そしてバックスラッシュは正規表現ではエスケープ。バックスラッシュ自体を表すにはバックスラッシュを2 つ。つまり,\\。で,これを,\\ と表示してくれるか ¥¥ と表示するかは,ものによる。
そおいうのがイヤイヤなので,ちゃんと Unix などで使用されるパス区切り記号 / (スラッシュ)を使いましょう。

つまり,
"C:\\WINDOWS\\Fonts\\msmincho.ttc" か
"C:/WINDOWS/Fonts/msmincho.ttc" か
ということでよいのじゃないかと思います(私は,Windows は嫌いなので,詳しくは知らない)

No.16334 Re: Graphvizでパス解析の標準解を表示させるには  【コロン】 2012/02/03(Fri) 20:33

青木先生

ありがとうございました。

● 「統計学関連なんでもあり」の過去ログ--- 045 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る