R

重回帰分析とロジステック回帰分析をRとMplusでやって比較する[Mplus][R]

データの準備 AERパッケージのCPS1985データを利用する。 library(AER) data(CPS1985) d1 <- CPS1985 caretパッケージのdummyVars関数を用いて、factor型のものをすべてダミー変数化する。 library(caret) dummy <- dummyVars(~.,data=d1) d2 <- as.data.fra…

ギャンブル障害のスクリーニング調査から実際の有病率を推定する

ギャンブル障害の推定値の話が参加している会議で出てきたので計算してみたいと思う。 圏内のギャンブル等依存に関する疫学調査(全国調査結果の中間とりまとめ) http://www.pref.hokkaido.lg.jp/hf/shf/seishin/gyannburukaigishiryou6-2.pdf 調査は2回行わ…

lavaanで順序カテゴリカル因子分析[R]

IPIP-NEOデータの呼び出しと格納 library("psych") data(bfi) # IPIP-NEOデータ d1 <- bfi[1:10] # 因子分析に使用するのは1~10列目。2つの因子のみ。 d1 <-na.omit(d1) # 欠損値のあるケースを削除 モデルと実行 library(lavaan) model <- ' Ag =~ A1 + A…

lavaanで行う重回帰分析[R]

lavaanなどのSEMパッケージでも回帰分析ができるとは以前から知っていたが、具体的にどうすればいいのか知らなかったので調べてみた。 シミュレーションデータ AERパッケージの中のデータCPS1985を用いる。 賃金(wage)に対する効果を見る重回帰分析をデモ…

モンテカルロ検定に基づく間接効果の推定と信頼区間[R]

デルタ法による間接効果の推定値はサンプルサイズが小さい場合には、正規分布を仮定したz値を使った検定には不向きとなる。その一つの解決策として、モンテカルロ検定に基づく間接効果の推定と信頼区間の推定がある。利用するのはsemToolsパッケージである。…

媒介変数と間接効果と総合効果[R]

lavaan - Mediation https://lavaan.ugent.be/tutorial/mediation.html Yが従属変数、Xが独立変数(予測変数)、Mが媒介変数とする。 データは仮想のもの。 library(lavaan) set.seed(1234) X <- rnorm(100) M <- 0.5*X + rnorm(100) Y <- 0.7*M + rnorm(100) …

lavaanの制約の構文[R]

制約条件の記号 記号 記述例 意味 == a == b aはbと同値である < a< b aはb以下の値となる > a>b aはb以上の値となる := a:=b aをbと定義する 準備 Holzinger and SwinefordのCFAモデルを簡略化して作成。 library(lavaan) model0 <- ' visual =~ x1 + x2 + …

lavaanのチュートリアル[R]

lavaanのチュートリアルが日本語翻訳されていたようだ。 英語版 https://lavaan.ugent.be/tutorial/tutorial.pdf 日本語翻訳 http://www.ec.kansai-u.ac.jp/user/arakit/documents/lavaanTutorial20170124.pdf 関西大学商学部の荒木孝治さんによる翻訳。

lavaanパッケージの構造方程式の初期値、モデル相関行列、決定係数[R]

今回も前回の続きlavaanパッケージのinspect関数についてである。 ides.hatenablog.com たくさんあるな中で、利用頻度の高そうな初期値、モデル相関行列、決定係数について求め方を書いた。 https://lavaan.ugent.be/tutorial/inspect.htmllavaan.ugent.be …

lavaanパッケージinspect関数[R]

lavaanの結果はsummary関数で出すが、それよりも詳細な結果が知りたい場合にはinspect関数を利用する。 https://lavaan.ugent.be/tutorial/inspect.htmllavaan.ugent.be 前準備 まずはこちらで分析したモデルを利用するので、オブジェクトfitに格納する。 li…

lavaanで分析した時の詳細情報[R]

https://lavaan.ugent.be/tutorial/inspect.htmllavaan.ugent.be 前準備 まずはこちらで分析したモデルを利用するので、オブジェクトfitに格納する。 library(lavaan) model <- ' # measurement model ind60 =~ x1 + x2 + x3 dem60 =~ y1 + y2 + y3 + y4 dem…

sem関数とlavaan関数[R]

sem関数が自働的にコードを補ってくれるため、基本的な分析には適しているが、細かいところまでコードを書き込む場合には、lavaan関数の方が向いていることもある。 sem関数での推定 PoliticalDemocracyを使って簡単なSEMを作成してみる。以下のようなSEMで…

歪度と尖度[R]

最尤推定は多変量正規分布に従っているという仮定が置かれているため、最尤推定をするには変数が正規分布に従っているか否かを調べる必要がある。 歪度 skewness 歪度とは、分布がどの程度非対称なのかという指標である。 データPoliticalDemocracyの歪度を…

構造方程式モデリングによる構成概念の因果関係[R]

今回扱うのは構造方程式によって作成した概念の因果を検証するモデルである。 データ lavaanに同梱されているPoliticalDemocracyを使用する。詳細はこちらのエントリ。 y1 1960年の報道の自由に関する専門家の評価 y2 1960年の政治的反対運動の自由 y3 1960…

ω係数[R]

ω(オメガ)係数は内的整合性を確認するための指標である。近年はCronbachのαより良い方法と言われることが多い。Cronbachのαは因子構造を無視して、一次元性の検証していることが原因である。 データ psychパッケージに含まれるIPIP-NEOのデータbfiを使用する…

lavaanパッケージを用いて階層因子分析を推定する[R]

階層因子分析(hierarchical factor analysis)について松田淑美・狩野裕「高次因子分析モデルと階層因子分析モデルについて」から説明を引用しよう。 http://www.sigmath.es.osaka-u.ac.jp/~kano/research/meeting/20050827_BSJ33/matsudaABS.pdf 階層因子…

lavaanパッケージを用いて二次因子分析モデルを推定する[R]

二次因子分析モデル(second order factor analysis)とは「斜交解による通常の因子分析の結果,因子聞に強い相闘が観察されたときには,それらの因子に共通して影響を与える上位の因子を想定することができます。このように,通常の因子分析における複数の因…

lavaanパッケージを用いてMIMICモデルを推定する[R]

複数の観測変数によって1つの構成概念が規定され、その構成概念が別の観測変数群に影響を与えているようなモデルをMIMIC(Multiple Indicator Multiple Cause)モデルと呼ぶ。 前回と同じくPoliticalDemocracyのデータを使用してPLSモデルをlavaanパッケージ…

lavaanパッケージを用いてPLSモデルを推定する

PLS(Partial Least Squares)モデルについて。日本語にすると部分的最小二乗回帰である。 PLSモデルは,複数の観測変数によって純粋に指標化された新たな変数が,別の複数の観測変数の背後に仮定される構成概念へ及ぼす影響の強さについて検討するモデルであ…

確証的因子分析におけるMIMICモデル[R][Mplus]

複数の観測変数によって1つの構成概念が規定され、その構成概念が別の観測変数群に影響を与えているようなモデルをMIMIC(Multiple Indicator Multiple Cause)モデルと呼ぶ。 MIMICモデルのデモを見ていると、Mplusの例5.8を使ったものが多かったので、それ…

lavaanパッケージにおける共分散構造分析の付加的分析[R]

非標準化推定値と標準化推定値 豊田秀樹『共分散構造分析[R編]』36ページから。 母数の推定値には,非標準化推定値と標準化推定値があります。非標準化推定値は,データを標準化せずに分析を行った際に得られる推定値で,変数の単位の影響を受けます。一方,…

SEMの推定値の解釈[R]

lavaanパッケージで行った共分散構造分析の補足的なエントリ。 ides.hatenablog.com 例として潜在変数のところだけピックアップする。 Latent Variables: Estimate Std.Err z-value P(>|z|) Std.lv Std.all ind60 =~ x1 1.000 0.670 0.920 x2 2.180 0.139 15…

共分散行列からモデルを推定する

lavaanは共分散行列からもモデルの推定ができる。 http://lavaan.ugent.be/tutorial/cov.htmllavaan.ugent.be 例題はこの論文のようである。 https://www.jstor.org/stable/270754?seq=1 共分散行列を作成し、変数に名前をつける。 getCovコマンドを使用する…

Structural Equation Modeling with lavaan

Structural Equation Modeling with lavaan (English Edition)作者:Gana , Kamel,Broc , Guillaume発売日: 2018/12/31メディア: Kindle版 lavaanの本。驚くほど高い。 検索をかけているとシーク教の結婚式の情報が出てくる。 en.wikipedia.org あと、パンジ…

lavaanパッケージで共分散構造分析を行う[R]

lavaanパッケージ習得のためのお勉強ノート。 http://lavaan.ugent.be/tutorial/sem.htmllavaan.ugent.be library(lavaan) データの詳細 lavaanに同梱されている選挙に関するデータを使用する。Bollenが1989年に書いた本で使われていたデータ。 11変数の75個…

prevalenceパッケージを用いた有病率の推定[R]

R

新型コロナ関係の疫学の問題に取り組んでいるブログがあり、読んでいるといろいろと勉強なることが多い。 mikuhatsune.hatenadiary.com prevalenceパッケージで似たようなことができるエントリがあつた気がしたので、少し調べてみた。 prevalenceパッケージ…

クロス表から元データを復元する

クロス表の再分析をする機会があり、データから元データに変換する必要があったので少し調べてみた。 元データという呼び方はもちろん適切ではない。 呼び方を調べてみたのだがよくわからないのだが、意図としては、ケースが行、変数が列になっているデータ…

全変数の相関係数をcsvで書き出す

以前エントリしたhetcor関数を使った全変数の関連を把握する試みの続き。 ides.hatenablog.com エントリを入れたときにはサンプルデータでやったのでうまくいったが、実際のデータでやってみたところ使いにくさを感じた。 困った点はは変数が多すぎると相関…

texregの結果をRstudioで取り込むには

今回は2年以上前のエントリの続きである。 ides.hatenablog.com 一番下の節で紹介しているtexregパッケージを実戦で使ってみたのだが意外に使いにくい。 確かに、HTML形式で綺麗な回帰分析は作れるが、それをRstudioに張り付けてレポートにすること、つまり…

潜在プロファイル分析の標準書式での書き換え

mclustパッケージを使った潜在プロファイル分析のエントリではパイプ演算子によるコードを使用していた。 ides.hatenablog.com パイプを使わずにRの標準書式での記述を示しておきたい。 参考までに、パイプ演算子での表記も併記しておく。 まず、young_peopl…