sand_box
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| sand_box [2025/09/30 13:03] – hkimscil | sand_box [2025/12/29 04:46] (current) – hkimscil | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | {{pasted: | ||
| + | < | ||
| + | library(tidyverse) | ||
| + | library(lavaan) | ||
| + | cormat = lav_matrix_lower2full(c(1, | ||
| + | | ||
| + | | ||
| + | | ||
| + | colnames(cormat) <- rownames(cormat) <- c(" | ||
| + | cormat | ||
| + | |||
| + | n_mean = matrix( c(rep(254, | ||
| + | | ||
| + | n_mean | ||
| + | n_mean <- n_mean %>% | ||
| + | `colnames< | ||
| + | `rownames< | ||
| + | n_mean | ||
| + | |||
| + | |||
| + | |||
| + | # Install the MASS package if not already installed | ||
| + | # install.packages(" | ||
| + | # Load the package | ||
| + | library(MASS) | ||
| + | library(lavaan) | ||
| + | |||
| + | #01 데이터 입력 #### | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | |||
| + | # 1. Define the mean vector (for 3 variables) | ||
| + | mns <- c(100, 120, 150, 130) | ||
| + | # 2. Define the covariance matrix (must be symmetric and positive-definite) | ||
| + | # Example: 3x3 covariance matrix | ||
| + | cv_mat <- lav_matrix_lower2full( | ||
| + | | ||
| + | 21.5, 37.9, | ||
| + | 23.5, 25.2, 41.7, | ||
| + | 16.5, 14.6, 14.5, 15.8)) | ||
| + | colnames(cvMat) <- rownames(cvMat) <- c(" | ||
| + | |||
| + | # 3. Simulate the data (e.g., 100 observations) | ||
| + | n_observations <- 300 | ||
| + | sim_d <- mvrnorm(n = n_observations, | ||
| + | sim_data <- round(sim_d, | ||
| + | # View the first few rows of the simulated data | ||
| + | colnames(sim_data) <- c(" | ||
| + | head(sim_data) | ||
| + | str(sim_data) | ||
| + | |||
| + | PathModel <- ' | ||
| + | SU ~ a*AB +b*IN | ||
| + | AC ~ c*SU + d*AB | ||
| + | AB ~~ IN | ||
| + | ' | ||
| + | #03 분석진행은 sem을 이용하여 한다. #### | ||
| + | # sem(모델, sample.cov= 공분산 행렬, sample.nobs=샘플의 개수) | ||
| + | #fitM <- sem(PathModel, | ||
| + | # fixed.x = FALSE) | ||
| + | fitM <- sem(PathModel, | ||
| + | #04 결과보기 #### | ||
| + | summary(fitM, | ||
| + | |||
| + | # install.packages(" | ||
| + | library(semPlot) | ||
| + | semPaths(fitM, | ||
| + | style = " | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | data(PoliticalDemocracy) | ||
| + | PoliticalDemocracy | ||
| + | sem.model <- " | ||
| + | # measurement model | ||
| + | ind60 =~ x1 + x2 + x3 | ||
| + | dem60 =~ y1 + y2 + y3 + y4 | ||
| + | dem65 =~ y5 + y6 + y7 + y8 | ||
| + | # regressions | ||
| + | dem60 ~ ind60 | ||
| + | dem65 ~ ind60 + dem60 | ||
| + | # residual correlations | ||
| + | y1 ~~ y5 | ||
| + | y2 ~~ y4 + y6 | ||
| + | y3 ~~ y7 | ||
| + | y4 ~~ y8 | ||
| + | y6 ~~ y8 | ||
| + | " | ||
| + | |||
| + | # Estimate model | ||
| + | fit1 <- sem(model = sem.model, data = PoliticalDemocracy) | ||
| + | |||
| + | # show summary result | ||
| + | summary(fit1, | ||
| + | |||
| + | library(lavaan) | ||
| + | library(semPlot) | ||
| + | library(OpenMx) | ||
| + | library(tidyverse) | ||
| + | library(knitr) | ||
| + | library(kableExtra) | ||
| + | library(GGally) | ||
| + | |||
| + | model <-' | ||
| + | mpg ~ hp + gear + cyl + disp + carb + am + wt | ||
| + | hp ~ cyl + disp + carb | ||
| + | ' | ||
| + | fit.mod <- sem(model, data=mtcars) | ||
| + | summary(fit.mod, | ||
| + | |||
| + | |||
| + | dat <- read.csv(" | ||
| + | head(dat) | ||
| + | n <- nrow(dat) | ||
| + | S <- cov(dat) | ||
| + | cor <- cor(dat) | ||
| + | |||
| + | # | ||
| + | # xSelf-Efficacy = BMI + Self-Esteem + XDisturbance | ||
| + | # Bulimic Symptoms = BMI + Self-Esteem + XSelf-Efficacy + XDisturbance | ||
| + | # Restrictive Symptoms = BMI + Self-Esteem + xSelf-Efficacy + xDisturbance | ||
| + | # Overall Risk = BMI + Self-Esteem + xSelf-Efficacy + Acculturation + xDisturbance | ||
| + | # | ||
| + | |||
| + | ex1 <- " | ||
| + | # Tilda ~ : Regression | ||
| + | # M ~ X regression (X predicts M) | ||
| + | # Each line corresponds to an equation | ||
| + | # Disturbance is automatically included for each regression | ||
| + | # (i.e. no extra term needed) | ||
| + | | ||
| + | DietSE ~ BMI + SelfEsteem | ||
| + | Bulimia ~ DietSE + BMI + SelfEsteem | ||
| + | Restrictive ~ DietSE + BMI + SelfEsteem | ||
| + | Risk ~ DietSE + BMI + SelfEsteem + Accu | ||
| + | " | ||
| + | ex1.fit <- sem(ex1, data=dat) | ||
| + | summary(ex1.fit, | ||
| + | ex1b.fit <- sem(model = ex1, sample.cov = S, sample.nobs = n) | ||
| + | summary(ex1b.fit) | ||
| + | library(tidyverse) | ||
| + | library(lavaan) | ||
| + | cormat = lav_matrix_lower2full(c(1, | ||
| + | | ||
| + | | ||
| + | | ||
| + | colnames(cormat) <- rownames(cormat) <- c(" | ||
| + | cormat | ||
| + | |||
| + | n_mean = matrix( c(rep(254, | ||
| + | | ||
| + | n_mean | ||
| + | n_mean <- n_mean %>% | ||
| + | `colnames< | ||
| + | `rownames< | ||
| + | n_mean | ||
| + | |||
| + | |||
| + | |||
| + | # Install the MASS package if not already installed | ||
| + | # install.packages(" | ||
| + | # Load the package | ||
| + | library(MASS) | ||
| + | library(lavaan) | ||
| + | |||
| + | #01 데이터 입력 #### | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | |||
| + | # 1. Define the mean vector (for 3 variables) | ||
| + | mns <- c(100, 120, 150, 130) | ||
| + | # 2. Define the covariance matrix (must be symmetric and positive-definite) | ||
| + | # Example: 3x3 covariance matrix | ||
| + | cv_mat <- lav_matrix_lower2full( | ||
| + | | ||
| + | 21.5, 37.9, | ||
| + | 23.5, 25.2, 41.7, | ||
| + | 16.5, 14.6, 14.5, 15.8)) | ||
| + | colnames(cvMat) <- rownames(cvMat) <- c(" | ||
| + | |||
| + | # 3. Simulate the data (e.g., 100 observations) | ||
| + | n_observations <- 300 | ||
| + | sim_d <- mvrnorm(n = n_observations, | ||
| + | sim_data <- round(sim_d, | ||
| + | # View the first few rows of the simulated data | ||
| + | colnames(sim_data) <- c(" | ||
| + | head(sim_data) | ||
| + | str(sim_data) | ||
| + | |||
| + | PathModel <- ' | ||
| + | SU ~ a*AB +b*IN | ||
| + | AC ~ c*SU + d*AB | ||
| + | AB ~~ IN | ||
| + | ' | ||
| + | #03 분석진행은 sem을 이용하여 한다. #### | ||
| + | # sem(모델, sample.cov= 공분산 행렬, sample.nobs=샘플의 개수) | ||
| + | #fitM <- sem(PathModel, | ||
| + | # fixed.x = FALSE) | ||
| + | fitM <- sem(PathModel, | ||
| + | #04 결과보기 #### | ||
| + | summary(fitM, | ||
| + | |||
| + | # install.packages(" | ||
| + | library(semPlot) | ||
| + | semPaths(fitM, | ||
| + | style = " | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | data(PoliticalDemocracy) | ||
| + | PoliticalDemocracy | ||
| + | sem.model <- " | ||
| + | # measurement model | ||
| + | ind60 =~ x1 + x2 + x3 | ||
| + | dem60 =~ y1 + y2 + y3 + y4 | ||
| + | dem65 =~ y5 + y6 + y7 + y8 | ||
| + | # regressions | ||
| + | dem60 ~ ind60 | ||
| + | dem65 ~ ind60 + dem60 | ||
| + | # residual correlations | ||
| + | y1 ~~ y5 | ||
| + | y2 ~~ y4 + y6 | ||
| + | y3 ~~ y7 | ||
| + | y4 ~~ y8 | ||
| + | y6 ~~ y8 | ||
| + | " | ||
| + | |||
| + | # Estimate model | ||
| + | fit1 <- sem(model = sem.model, data = PoliticalDemocracy) | ||
| + | |||
| + | # show summary result | ||
| + | summary(fit1, | ||
| + | |||
| + | library(lavaan) | ||
| + | library(semPlot) | ||
| + | library(OpenMx) | ||
| + | library(tidyverse) | ||
| + | library(knitr) | ||
| + | library(kableExtra) | ||
| + | library(GGally) | ||
| + | |||
| + | model <-' | ||
| + | mpg ~ hp + gear + cyl + disp + carb + am + wt | ||
| + | hp ~ cyl + disp + carb | ||
| + | ' | ||
| + | fit.mod <- sem(model, data=mtcars) | ||
| + | summary(fit.mod, | ||
| + | |||
| + | |||
| + | dat <- read.csv(" | ||
| + | head(dat) | ||
| + | n <- nrow(dat) | ||
| + | S <- cov(dat) | ||
| + | cor <- cor(dat) | ||
| + | |||
| + | # | ||
| + | # xSelf-Efficacy = BMI + Self-Esteem + XDisturbance | ||
| + | # Bulimic Symptoms = BMI + Self-Esteem + XSelf-Efficacy + XDisturbance | ||
| + | # Restrictive Symptoms = BMI + Self-Esteem + xSelf-Efficacy + xDisturbance | ||
| + | # Overall Risk = BMI + Self-Esteem + xSelf-Efficacy + Acculturation + xDisturbance | ||
| + | # | ||
| + | |||
| + | ex1 <- " | ||
| + | # Tilda ~ : Regression | ||
| + | # M ~ X regression (X predicts M) | ||
| + | # Each line corresponds to an equation | ||
| + | # Disturbance is automatically included for each regression | ||
| + | # (i.e. no extra term needed) | ||
| + | | ||
| + | DietSE ~ BMI + SelfEsteem | ||
| + | Bulimia ~ DietSE + BMI + SelfEsteem | ||
| + | Restrictive ~ DietSE + BMI + SelfEsteem | ||
| + | Risk ~ DietSE + BMI + SelfEsteem + Accu | ||
| + | " | ||
| + | ex1.fit <- sem(ex1, data=dat) | ||
| + | summary(ex1.fit, | ||
| + | ex1b.fit <- sem(model = ex1, sample.cov = S, sample.nobs = n) | ||
| + | summary(ex1b.fit) | ||
| + | |||
| + | </ | ||
| + | < | ||
| + | * sand box:code01 | ||
| + | * *sand box: | ||
| + | </ | ||
| + | |||
| + | |||
| {{clock}} | {{clock}} | ||
| - | {{: | + | ---- |
| - | {{: | + | graph TD |
| - | {{: | + | A(**mermaid**)--> |
| - | {{: | + | A--> |
| - | {{: | + | B--> |
| - | {{: | + | C-->D |
| - | {{: | + | |
| - | {{:pasted: | + | |
| - | {{: | + | |
| \begin{eqnarray*} | \begin{eqnarray*} | ||
| Line 27: | Line 326: | ||
| & & e^{i \pi} + 1 = 0\; | & & e^{i \pi} + 1 = 0\; | ||
| \end{eqnarray*} | \end{eqnarray*} | ||
| - | |||
| - | |||
| - | < | ||
| - | |||
| <WRAP tabs> | <WRAP tabs> | ||
| Line 38: | Line 333: | ||
| </ | </ | ||
| - | {{tabinclude> | + | {{tabinclude> |
| < | < | ||
| - | * page1|top page | + | * *sand_box:page1 |
| - | * page2 | + | * sand_box:page2 |
| - | * *page3 | + | * sand_box:page3 |
| </ | </ | ||
sand_box.1759237382.txt.gz · Last modified: by hkimscil
