マルチレベル+ウェイト?
Carle 2009 Fitting multilevel models in complex survey data with design weights: Recommendations
Kline 2010 Principles and Practice of SEM
p.336
The reference variable for A is X1, and the reference variable for B is X3.
X3ではなく、W1。
Singer & Willet おすすめ文献
誤差共分散構造についての文献
Van Leeuwen 1997 A Note on the Covariance Structure in a Linear Model
Goldstein, healy & Rasbash 1994 Multilevel time series models with applications to repeated measures data.
Wolfinger 1993 Covariance structure selection in general mixed models
縦断データの分析 1 変化についてのマルチレベルモデリング
- 作者: ジュディスシンガー,ジョンウィレット,Judith D. Singer,John B. Willett,菅原ますみ
- 出版社/メーカー: 朝倉書店
- 発売日: 2012/09/01
- メディア: 単行本
- クリック: 1回
- この商品を含むブログを見る
typo:
p.44 ここではより実質的に使いでのある
p.67 表3.3 固定効果の変化率の位置がおかしい。これは2つめの切片の横に来るはず(たぶん)。
p.113 SUS PROC→SAS PROC
Principles and Practice of Structural Equation Modeling Ch.8
clear all ssd init exercise hardy fitness stress illness ssd set obs 373 ssd set cov 4422.25 \ -75.81 1444 \ 954.408 97.888 1354.24 \ -222.775 -585.58 -320.528 4489 \ -332.3936 -379.8784 -666.7866 1423.294 3903.7504 ssd list sem (illness<- fitness stress) (fitness<-exercise) (stress<-hardy), cov(exercise*hardy) estat gof, stats(all) estat mindices
Endogenous variables Observed: illness fitness stress Exogenous variables Observed: exercise hardy Fitting target model: Iteration 0: log likelihood = -9944.2736 Iteration 1: log likelihood = -9944.2736 Structural equation model Number of obs = 373 Estimation method = ml Log likelihood = -9944.2736 ------------------------------------------------------------------------------------ | OIM | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------------+---------------------------------------------------------------- Structural | illness <- | fitness | -.4244997 .0804313 -5.28 0.000 -.5821422 -.2668573 stress | .286752 .0441772 6.49 0.000 .2001664 .3733377 -----------------+---------------------------------------------------------------- fitness <- | exercise | .2158195 .0263842 8.18 0.000 .1641074 .2675316 -----------------+---------------------------------------------------------------- stress <- | hardy | -.4055263 .0888454 -4.56 0.000 -.57966 -.2313926 -------------------+---------------------------------------------------------------- var(e.illness)| 3203.954 234.6102 2775.6 3698.416 var(e.fitness)| 1145.182 83.85616 992.0761 1321.916 var(e.stress)| 4240.134 310.4846 3673.247 4894.507 var(exercise)| 4410.394 322.952 3820.744 5091.043 var(hardy)| 1440.129 105.4537 1247.59 1662.382 -------------------+---------------------------------------------------------------- cov(exercise,hardy)| -75.60676 130.551 -0.58 0.562 -331.4821 180.2685 ------------------------------------------------------------------------------------ LR test of model vs. saturated: chi2(5) = 11.11, Prob > chi2 = 0.0493 . estat gof, stats(all) ---------------------------------------------------------------------------- Fit statistic | Value Description ---------------------+------------------------------------------------------ Likelihood ratio | chi2_ms(5) | 11.107 model vs. saturated p > chi2 | 0.049 chi2_bs(9) | 165.608 baseline vs. saturated p > chi2 | 0.000 ---------------------+------------------------------------------------------ Population error | RMSEA | 0.057 Root mean squared error of approximation 90% CI, lower bound | 0.003 upper bound | 0.103 pclose | 0.336 Probability RMSEA <= 0.05 ---------------------+------------------------------------------------------ Information criteria | AIC | 19908.547 Akaike's information criterion BIC | 19947.763 Bayesian information criterion ---------------------+------------------------------------------------------ Baseline comparison | CFI | 0.961 Comparative fit index TLI | 0.930 Tucker-Lewis index ---------------------+------------------------------------------------------ Size of residuals | SRMR | 0.051 Standardized root mean squared residual CD | 0.197 Coefficient of determination ---------------------------------------------------------------------------- . estat mindices Modification indices ---------------------------------------------------------------------- | Standard | MI df P>MI EPC EPC -----------------------+---------------------------------------------- Structural | fitness <- | illness | 4.386 1 0.04 -.125466 -.2108351 stress | 5.372 1 0.02 -.0606954 -.1105053 ---------------------+---------------------------------------------- stress <- | fitness | 5.110 1 0.02 -.2074007 -.1139156 -----------------------+---------------------------------------------- cov(e.fitness,e.stress)| 3.907 1 0.05 -225.5115 -.1023391 ---------------------------------------------------------------------- EPC = expected parameter change
Principles and practice of Structural Equation Modeling Ch.7
今年4版が出て、Stataのコードもついてくる模様。
今のところraw dataはないので、共分散行列を入力してそれを分析することになる。
共分散行列は、サポートページでしめされている標準偏差と相関行列から計算することができる。
Rの場合はcor2cov()で相関行列と標準偏差を共分散行列に書き換えてくれる。
基本的にxとyの相関=(xとyの共分散)/(xの標準偏差)(yの標準偏差)なので、
相関にxとyの標準誤差をかければ、共分散は求められるので、エクセルでも計算できる。
clear all ssd init coercive burnout support tpi experien somatic ssd set obs 109 ssd set cov 69.009572 \ 28.868204 95.447038 \ -22.427279 -49.071453 110.695649 \ -16.805466 1.011164 9.805758 25 \ -4.987848 3.406984 2.808509 12.160924 13.822037 \ -15.269773 -0.68495 8.707448 19.179989 9.728453 27.787658 ssd list sem (burnout<-coercive support) (tpi<-coercive support burnout) (experien<-tpi) (somatic<-tpi), cov(coercive*support) estat gof, stats(all)
Endogenous variables Observed: burnout tpi experien somatic Exogenous variables Observed: coercive support Fitting target model: Iteration 0: log likelihood = -2052.8451 Iteration 1: log likelihood = -2052.8451 Structural equation model Number of obs = 109 Estimation method = ml Log likelihood = -2052.8451 -------------------------------------------------------------------------------- | OIM | Coef. Std. Err. z P>|z| [95% Conf. Interval] ---------------+---------------------------------------------------------------- Structural | burnout <- | coercive | .2935851 .0984724 2.98 0.003 .1005828 .4865873 support | -.3838194 .0777506 -4.94 0.000 -.5362078 -.231431 -------------+---------------------------------------------------------------- tpi <- | burnout | .1424866 .0510318 2.79 0.005 .0424661 .2425072 coercive | -.2717027 .0545622 -4.98 0.000 -.3786426 -.1647629 support | .0966997 .0458219 2.11 0.035 .0068904 .1865089 -------------+---------------------------------------------------------------- experien <- | tpi | .486437 .0538653 9.03 0.000 .3808629 .5920111 -------------+---------------------------------------------------------------- somatic <- | tpi | .7671996 .0692629 11.08 0.000 .6314468 .9029524 ---------------+---------------------------------------------------------------- var(e.burnout)| 67.51208 9.14499 51.77024 88.04055 var(e.tpi)| 19.16417 2.595923 14.69565 24.99144 var(e.experien)| 7.833977 1.061168 6.007324 10.21606 var(e.somatic)| 12.95285 1.754555 9.932622 16.89143 var(coercive)| 68.37646 9.262076 52.43307 89.16776 var(support)| 109.6801 14.85695 84.10591 143.0306 ---------------+---------------------------------------------------------------- cov(coercive,| support)| -22.22152 8.563488 -2.59 0.009 -39.00565 -5.437396 -------------------------------------------------------------------------------- LR test of model vs. saturated: chi2(7) = 3.93, Prob > chi2 = 0.7877 . estat gof, stats(all) ---------------------------------------------------------------------------- Fit statistic | Value Description ---------------------+------------------------------------------------------ Likelihood ratio | chi2_ms(7) | 3.931 model vs. saturated p > chi2 | 0.788 chi2_bs(14) | 211.718 baseline vs. saturated p > chi2 | 0.000 ---------------------+------------------------------------------------------ Population error | RMSEA | 0.000 Root mean squared error of approximation 90% CI, lower bound | 0.000 upper bound | 0.078 pclose | 0.882 Probability RMSEA <= 0.05 ---------------------+------------------------------------------------------ Information criteria | AIC | 4133.690 Akaike's information criterion BIC | 4171.369 Bayesian information criterion ---------------------+------------------------------------------------------ Baseline comparison | CFI | 1.000 Comparative fit index TLI | 1.031 Tucker-Lewis index ---------------------+------------------------------------------------------ Size of residuals | SRMR | 0.034 Standardized root mean squared residual CD | 0.447 Coefficient of determination ----------------------------------------------------------------------------
JGSSの職種をリコードする
Stataでリコードする場合,
JGSS2010コードブックの職業コードを参照して,リコードしてみる.
以下のコードで一応,管理(1)・事務(2)・熟練(3)・専門(4)・農林(5)・半熟練(6)・販売(7)・非熟練(8)のリコードができる.
分類不能は欠損とした.範囲指定をすれば,もっとエレガントにできるのだろう.
generate tjob=.
replace tjob = 1 if XXJOB = 545
replace tjob = 1 if XXJOB = 546
replace tjob = 1 if XXJOB = 547
replace tjob = 1 if XXJOB = 548
replace tjob = 1 if XXJOB = 549
replace tjob = 1 if XXJOB = 550
replace tjob = 1 if XXJOB = 551
replace tjob = 1 if XXJOB = 552
replace tjob = 1 if XXJOB = 553
replace tjob = 1 if XXJOB = 608
replace tjob = 2 if XXJOB = 554
replace tjob = 2 if XXJOB = 555
replace tjob = 2 if XXJOB = 556
replace tjob = 2 if XXJOB = 557
replace tjob = 2 if XXJOB = 558
replace tjob = 2 if XXJOB = 559
replace tjob = 2 if XXJOB = 560
replace tjob = 2 if XXJOB = 561
replace tjob = 2 if XXJOB = 562
replace tjob = 2 if XXJOB = 563
replace tjob = 2 if XXJOB = 564
replace tjob = 2 if XXJOB = 565
replace tjob = 2 if XXJOB = 586
replace tjob = 2 if XXJOB = 590
replace tjob = 2 if XXJOB = 593
replace tjob = 2 if XXJOB = 594
replace tjob = 2 if XXJOB = 595
replace tjob = 2 if XXJOB = 596
replace tjob = 2 if XXJOB = 597
replace tjob = 2 if XXJOB = 598
replace tjob = 2 if XXJOB = 616
replace tjob = 2 if XXJOB = 617
replace tjob = 2 if XXJOB = 618
replace tjob = 2 if XXJOB = 619
replace tjob = 2 if XXJOB = 701
replace tjob = 3 if XXJOB = 579
replace tjob = 3 if XXJOB = 581
replace tjob = 3 if XXJOB = 623
replace tjob = 3 if XXJOB = 624
replace tjob = 3 if XXJOB = 626
replace tjob = 3 if XXJOB = 628
replace tjob = 3 if XXJOB = 631
replace tjob = 3 if XXJOB = 633
replace tjob = 3 if XXJOB = 635
replace tjob = 3 if XXJOB = 636
replace tjob = 3 if XXJOB = 637
replace tjob = 3 if XXJOB = 638
replace tjob = 3 if XXJOB = 639
replace tjob = 3 if XXJOB = 640
replace tjob = 3 if XXJOB = 641
replace tjob = 3 if XXJOB = 642
replace tjob = 3 if XXJOB = 643
replace tjob = 3 if XXJOB = 644
replace tjob = 3 if XXJOB = 647
replace tjob = 3 if XXJOB = 651
replace tjob = 3 if XXJOB = 654
replace tjob = 3 if XXJOB = 655
replace tjob = 3 if XXJOB = 656
replace tjob = 3 if XXJOB = 658
replace tjob = 3 if XXJOB = 660
replace tjob = 3 if XXJOB = 661
replace tjob = 3 if XXJOB = 662
replace tjob = 3 if XXJOB = 663
replace tjob = 3 if XXJOB = 664
replace tjob = 3 if XXJOB = 665
replace tjob = 3 if XXJOB = 666
replace tjob = 3 if XXJOB = 668
replace tjob = 3 if XXJOB = 670
replace tjob = 3 if XXJOB = 671
replace tjob = 3 if XXJOB = 673
replace tjob = 3 if XXJOB = 674
replace tjob = 3 if XXJOB = 675
replace tjob = 3 if XXJOB = 677
replace tjob = 3 if XXJOB = 678
replace tjob = 3 if XXJOB = 679
replace tjob = 3 if XXJOB = 680
replace tjob = 3 if XXJOB = 681
replace tjob = 3 if XXJOB = 684
replace tjob = 4 if XXJOB = 501
replace tjob = 4 if XXJOB = 502
replace tjob = 4 if XXJOB = 503
replace tjob = 4 if XXJOB = 504
replace tjob = 4 if XXJOB = 505
replace tjob = 4 if XXJOB = 506
replace tjob = 4 if XXJOB = 507
replace tjob = 4 if XXJOB = 508
replace tjob = 4 if XXJOB = 509
replace tjob = 4 if XXJOB = 510
replace tjob = 4 if XXJOB = 511
replace tjob = 4 if XXJOB = 512
replace tjob = 4 if XXJOB = 513
replace tjob = 4 if XXJOB = 514
replace tjob = 4 if XXJOB = 515
replace tjob = 4 if XXJOB = 516
replace tjob = 4 if XXJOB = 517
replace tjob = 4 if XXJOB = 518
replace tjob = 4 if XXJOB = 519
replace tjob = 4 if XXJOB = 520
replace tjob = 4 if XXJOB = 521
replace tjob = 4 if XXJOB = 522
replace tjob = 4 if XXJOB = 523
replace tjob = 4 if XXJOB = 524
replace tjob = 4 if XXJOB = 525
replace tjob = 4 if XXJOB = 526
replace tjob = 4 if XXJOB = 527
replace tjob = 4 if XXJOB = 528
replace tjob = 4 if XXJOB = 529
replace tjob = 4 if XXJOB = 530
replace tjob = 4 if XXJOB = 531
replace tjob = 4 if XXJOB = 532
replace tjob = 4 if XXJOB = 533
replace tjob = 4 if XXJOB = 534
replace tjob = 4 if XXJOB = 535
replace tjob = 4 if XXJOB = 536
replace tjob = 4 if XXJOB = 537
replace tjob = 4 if XXJOB = 538
replace tjob = 4 if XXJOB = 539
replace tjob = 4 if XXJOB = 540
replace tjob = 4 if XXJOB = 541
replace tjob = 4 if XXJOB = 542
replace tjob = 4 if XXJOB = 543
replace tjob = 4 if XXJOB = 544
replace tjob = 4 if XXJOB = 609
replace tjob = 4 if XXJOB = 610
replace tjob = 4 if XXJOB = 615
replace tjob = 4 if XXJOB = 703
replace tjob = 5 if XXJOB = 599
replace tjob = 5 if XXJOB = 600
replace tjob = 5 if XXJOB = 601
replace tjob = 5 if XXJOB = 602
replace tjob = 5 if XXJOB = 603
replace tjob = 5 if XXJOB = 604
replace tjob = 5 if XXJOB = 605
replace tjob = 6 if XXJOB = 580
replace tjob = 6 if XXJOB = 606
replace tjob = 6 if XXJOB = 607
replace tjob = 6 if XXJOB = 611
replace tjob = 6 if XXJOB = 612
replace tjob = 6 if XXJOB = 613
replace tjob = 6 if XXJOB = 614
replace tjob = 6 if XXJOB = 625
replace tjob = 6 if XXJOB = 627
replace tjob = 6 if XXJOB = 629
replace tjob = 6 if XXJOB = 630
replace tjob = 6 if XXJOB = 632
replace tjob = 6 if XXJOB = 634
replace tjob = 6 if XXJOB = 645
replace tjob = 6 if XXJOB = 646
replace tjob = 6 if XXJOB = 648
replace tjob = 6 if XXJOB = 649
replace tjob = 6 if XXJOB = 650
replace tjob = 6 if XXJOB = 652
replace tjob = 6 if XXJOB = 653
replace tjob = 6 if XXJOB = 657
replace tjob = 6 if XXJOB = 659
replace tjob = 6 if XXJOB = 667
replace tjob = 6 if XXJOB = 669
replace tjob = 6 if XXJOB = 672
replace tjob = 6 if XXJOB = 676
replace tjob = 7 if XXJOB = 566
replace tjob = 7 if XXJOB = 567
replace tjob = 7 if XXJOB = 568
replace tjob = 7 if XXJOB = 569
replace tjob = 7 if XXJOB = 570
replace tjob = 7 if XXJOB = 571
replace tjob = 7 if XXJOB = 572
replace tjob = 7 if XXJOB = 573
replace tjob = 7 if XXJOB = 574
replace tjob = 7 if XXJOB = 575
replace tjob = 7 if XXJOB = 576
replace tjob = 7 if XXJOB = 577
replace tjob = 7 if XXJOB = 582
replace tjob = 7 if XXJOB = 583
replace tjob = 7 if XXJOB = 584
replace tjob = 7 if XXJOB = 585
replace tjob = 7 if XXJOB = 587
replace tjob = 7 if XXJOB = 588
replace tjob = 7 if XXJOB = 589
replace tjob = 8 if XXJOB = 578
replace tjob = 8 if XXJOB = 591
replace tjob = 8 if XXJOB = 592
replace tjob = 8 if XXJOB = 620
replace tjob = 8 if XXJOB = 621
replace tjob = 8 if XXJOB = 622
replace tjob = 8 if XXJOB = 682
replace tjob = 8 if XXJOB = 683
replace tjob = 8 if XXJOB = 685
replace tjob = 8 if XXJOB = 686
replace tjob = 8 if XXJOB = 687
replace tjob = 8 if XXJOB = 688
重回帰分析の係数の標準化
通常のソフトウェアでは重回帰分析の係数の非標準解と標準解を同時に出力する.しかし,それらが出力されない場合,
もしくは手計算の場合は,非標準解にローデータの独立変数の標準偏差をかけて,従属変数の標準偏差で割ると,
標準解が得られるとされている.
まず,標準化されていない回帰式は以下のように書ける.
簡便のため,単回帰を想定する.
標準化されている回帰式は以下のように書ける.
ただし,は{tex:Y}のローデータにおける標準偏差を表すとする.
標準化された係数はのように*をつけてあらわす.
これを変形すると,
となる.これを定数部分と係数の部分に整理をすると.
よって係数の部分は,
となる.
したがって,
となる.