User Tools

Site Tools


path_analysis

Path Analysis

Planned Behavior Modeling

######################################################
## data file: PlannedBehavior.csv
######################################################
df <- read.csv("http://commres.net/wiki/_media/r/plannedbehavior.csv")
head(df)
str(df)
######################################################
# attitude
# norms
# control
# intention
# behavior
######################################################
# install.packages("lavaan")
library(lavaan)
 
# Specify model
specmod <- "
intention ~ attitude + norms + control 
"
# Estimate model
fitmod <- sem(specmod, data=df)
 
# Summarize model
summary(fitmod, fit.measures=TRUE, rsquare=TRUE)

Output

######################################################
> ## data file: PlannedBehavior.csv
> ######################################################
> df <- read.csv("http://commres.net/wiki/_media/r/plannedbehavior.csv")
> head(df)
  attitude norms control intention behavior
1     2.31  2.31    2.03      2.50     2.62
2     4.66  4.01    3.63      3.99     3.64
3     3.85  3.56    4.20      4.35     3.83
4     4.24  2.25    2.84      1.51     2.25
5     2.91  3.31    2.40      1.45     2.00
6     2.99  2.51    2.95      2.59     2.20
> str(df)
'data.frame':	199 obs. of  5 variables:
 $ attitude : num  2.31 4.66 3.85 4.24 2.91 2.99 3.96 3.01 4.77 3.67 ...
 $ norms    : num  2.31 4.01 3.56 2.25 3.31 2.51 4.65 2.98 3.09 3.63 ...
 $ control  : num  2.03 3.63 4.2 2.84 2.4 2.95 3.77 1.9 3.83 5 ...
 $ intention: num  2.5 3.99 4.35 1.51 1.45 2.59 4.08 2.58 4.87 3.09 ...
 $ behavior : num  2.62 3.64 3.83 2.25 2 2.2 4.41 4.15 4.35 3.95 ...
> ######################################################
> # attitude
> # norms
> # control
> # intention
> # behavior
> ######################################################
> # install.packages("lavaan")
> library(lavaan)
This is lavaan 0.6-9
lavaan is FREE software! Please report any bugs.
Warning message:
패키지 ‘lavaan’는 R 버전 4.1.2에서 작성되었습니다 
> 
> # Specify model
> specmod <- "
+ intention ~ attitude + norms + control 
+ "
> # Estimate model
> fitmod <- sem(specmod, data=df)
> 
> # Summarize model
> summary(fitmod, fit.measures=TRUE, rsquare=TRUE)
lavaan 0.6-9 ended normally after 11 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of model parameters                         4
                                                      
  Number of observations                           199
                                                      
Model Test User Model:
                                                      
  Test statistic                                 0.000
  Degrees of freedom                                 0

Model Test Baseline Model:

  Test statistic                                91.633
  Degrees of freedom                                 3
  P-value                                        0.000

User Model versus Baseline Model:

  Comparative Fit Index (CFI)                    1.000
  Tucker-Lewis Index (TLI)                       1.000

Loglikelihood and Information Criteria:

  Loglikelihood user model (H0)               -219.244
  Loglikelihood unrestricted model (H1)       -219.244
                                                      
  Akaike (AIC)                                 446.489
  Bayesian (BIC)                               459.662
  Sample-size adjusted Bayesian (BIC)          446.990

Root Mean Square Error of Approximation:

  RMSEA                                          0.000
  90 Percent confidence interval - lower         0.000
  90 Percent confidence interval - upper         0.000
  P-value RMSEA <= 0.05                             NA

Standardized Root Mean Square Residual:

  SRMR                                           0.000

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Expected
  Information saturated (h1) model          Structured

Regressions:
                   Estimate  Std.Err  z-value  P(>|z|)
  intention ~                                         
    attitude          0.352    0.058    6.068    0.000
    norms             0.153    0.059    2.577    0.010
    control           0.275    0.058    4.740    0.000

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)
   .intention         0.530    0.053    9.975    0.000

R-Square:
                   Estimate
    intention         0.369

Model 2

# Specify model
specmod2 <- "
intention ~ attitude + norms + control 
attitude ~~ norms + control
norms ~~ control 
"
# Estimate model
fitmod2 <- sem(specmod2, data=df)

# Summarize model
summary(fitmod2, fit.measures=TRUE, rsquare=TRUE)
fitmod <- lm(intention ~ attitude + norms + control, data=df)
summary(fitmod)
 
> # Specify model
> specmod2 <- "
+ intention ~ attitude + norms + control 
+ attitude ~~ norms + control
+ norms ~~ control 
+ "
> # Estimate model
> fitmod2 <- sem(specmod2, data=df)
> 
> # Summarize model
> summary(fitmod2, fit.measures=TRUE, rsquare=TRUE)
lavaan 0.6-9 ended normally after 17 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of model parameters                        10
                                                      
  Number of observations                           199
                                                      
Model Test User Model:
                                                      
  Test statistic                                 0.000
  Degrees of freedom                                 0

Model Test Baseline Model:

  Test statistic                               136.306
  Degrees of freedom                                 6
  P-value                                        0.000

User Model versus Baseline Model:

  Comparative Fit Index (CFI)                    1.000
  Tucker-Lewis Index (TLI)                       1.000

Loglikelihood and Information Criteria:

  Loglikelihood user model (H0)              -1011.828
  Loglikelihood unrestricted model (H1)      -1011.828
                                                      
  Akaike (AIC)                                2043.656
  Bayesian (BIC)                              2076.589
  Sample-size adjusted Bayesian (BIC)         2044.908

Root Mean Square Error of Approximation:

  RMSEA                                          0.000
  90 Percent confidence interval - lower         0.000
  90 Percent confidence interval - upper         0.000
  P-value RMSEA <= 0.05                             NA

Standardized Root Mean Square Residual:

  SRMR                                           0.000

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Expected
  Information saturated (h1) model          Structured

Regressions:
                   Estimate  Std.Err  z-value  P(>|z|)
  intention ~                                         
    attitude          0.352    0.058    6.068    0.000
    norms             0.153    0.059    2.577    0.010
    control           0.275    0.058    4.740    0.000

Covariances:
                   Estimate  Std.Err  z-value  P(>|z|)
  attitude ~~                                         
    norms             0.200    0.064    3.128    0.002
    control           0.334    0.070    4.748    0.000
  norms ~~                                            
    control           0.220    0.065    3.411    0.001

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)
   .intention         0.530    0.053    9.975    0.000
    attitude          0.928    0.093    9.975    0.000
    norms             0.830    0.083    9.975    0.000
    control           0.939    0.094    9.975    0.000

R-Square:
                   Estimate
    intention         0.369

> 
> fitmod <- lm(intention ~ attitude + norms + control, data=df)
> summary(fitmod)

Call:
lm(formula = intention ~ attitude + norms + control, data = df)

Residuals:
     Min       1Q   Median       3Q      Max 
-1.80282 -0.52734 -0.06018  0.51228  1.85202 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  0.58579    0.23963   2.445   0.0154 *  
attitude     0.35232    0.05866   6.006 9.13e-09 ***
norms        0.15250    0.05979   2.550   0.0115 *  
control      0.27502    0.05862   4.692 5.09e-06 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.7356 on 195 degrees of freedom
Multiple R-squared:  0.369,	Adjusted R-squared:  0.3593 
F-statistic: 38.01 on 3 and 195 DF,  p-value: < 2.2e-16

> 

Model 3

# Specify model
specmod3 <- "
  # directional relationships
  intention ~ attitude + norms + control 
  behavior ~ intention
  
  # covariances
  attitude ~~ norms + control
  norms ~~ control 
"
# Estimate model
fitmod3 <- sem(specmod3, data=df)

# Summarize model
summary(fitmod3, fit.measures=TRUE, rsquare=TRUE)
> df <- read.csv("http://commres.net/wiki/_media/r/plannedbehavior.csv")
> # Specify model
> specmod3 <- "
+   # directional relationships
+   intention ~ attitude + norms + control 
+   behavior ~ intention
+   
+   # covariances
+   attitude ~~ norms + control
+   norms ~~ control 
+ "
> # Estimate model
> fitmod3 <- sem(specmod3, data=df)
> 
> # Summarize model
> summary(fitmod3, fit.measures=TRUE, rsquare=TRUE)
lavaan 0.6-12 ended normally after 18 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of model parameters                        12

  Number of observations                           199

Model Test User Model:
                                                      
  Test statistic                                 2.023
  Degrees of freedom                                 3
  P-value (Chi-square)                           0.568

Model Test Baseline Model:

  Test statistic                               182.295
  Degrees of freedom                                10
  P-value                                        0.000

User Model versus Baseline Model:

  Comparative Fit Index (CFI)                    1.000
  Tucker-Lewis Index (TLI)                       1.019

Loglikelihood and Information Criteria:

  Loglikelihood user model (H0)              -1258.517
  Loglikelihood unrestricted model (H1)      -1257.506
                                                      
  Akaike (AIC)                                2541.035
  Bayesian (BIC)                              2580.555
  Sample-size adjusted Bayesian (BIC)         2542.538

Root Mean Square Error of Approximation:

  RMSEA                                          0.000
  90 Percent confidence interval - lower         0.000
  90 Percent confidence interval - upper         0.103
  P-value RMSEA <= 0.05                          0.735

Standardized Root Mean Square Residual:

  SRMR                                           0.019

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Expected
  Information saturated (h1) model          Structured

Regressions:
                   Estimate  Std.Err  z-value  P(>|z|)
  intention ~                                         
    attitude          0.352    0.058    6.068    0.000
    norms             0.153    0.059    2.577    0.010
    control           0.275    0.058    4.740    0.000
  behavior ~                                          
    intention         0.453    0.065    7.014    0.000

Covariances:
                   Estimate  Std.Err  z-value  P(>|z|)
  attitude ~~                                         
    norms             0.200    0.064    3.128    0.002
    control           0.334    0.070    4.748    0.000
  norms ~~                                            
    control           0.220    0.065    3.411    0.001

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)
   .intention         0.530    0.053    9.975    0.000
   .behavior          0.699    0.070    9.975    0.000
    attitude          0.928    0.093    9.975    0.000
    norms             0.830    0.083    9.975    0.000
    control           0.939    0.094    9.975    0.000

R-Square:
                   Estimate
    intention         0.369
    behavior          0.198
a <- (5*(5+1))/2
b <- 12
a-b 
path_analysis.txt · Last modified: 2024/09/28 05:45 by hkimscil

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki