"R 등급반응모형"의 두 판 사이의 차이

 
(같은 사용자의 중간 판 5개는 보이지 않습니다)
4번째 줄: 4번째 줄:
==예시 1: 일반==
==예시 1: 일반==
<syntaxhighlight lang='r' notebook=ltm hideerr>
<syntaxhighlight lang='r' notebook=ltm hideerr>
df <- read.csv("https://raw.githubusercontent.com/jmnote/zdata/master/github.com/cran/ltm/data/Science.csv")
df <- read.csv("https://raw.githubusercontent.com/jmnote/ds/main/github.com/cran/ltm/data/Science.csv")
# 데이터셋에는 7문항(Comfort, Environment, Work, Future, Technology, Industry, Benefit)이 있는데,
# 데이터셋에는 7문항(Comfort, Environment, Work, Future, Technology, Industry, Benefit)이 있는데,
# 이중에서 4문항만 선택(Comfort, Work, Future, Benefit)
# 이중에서 4문항만 선택(Comfort, Work, Future, Benefit)
20번째 줄: 20번째 줄:
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=ltm>
# 문항특성곡선 (문항별)
# 문항특성곡선
plot.grm(model, items=1)
plot.grm(model)
plot.grm(model, items=2)
plot.grm(model, items=3)
plot.grm(model, items=4)
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=ltm>
52번째 줄: 49번째 줄:
</syntaxhighlight>
</syntaxhighlight>


==예시 2: 별변도 같다고 가정==
==예시 2: 변별도 같다고 가정==
<syntaxhighlight lang='r' notebook=ltm hideerr>
<syntaxhighlight lang='r' notebook=2 hideerr>
df <- read.csv("https://raw.githubusercontent.com/jmnote/zdata/master/github.com/cran/ltm/data/Science.csv")
df <- read.csv("https://raw.githubusercontent.com/jmnote/ds/main/github.com/cran/ltm/data/Science.csv")
# 데이터셋에는 7문항(Comfort, Environment, Work, Future, Technology, Industry, Benefit)이 있는데,
# 데이터셋에는 7문항(Comfort, Environment, Work, Future, Technology, Industry, Benefit)이 있는데,
# 이중에서 4문항만 선택(Comfort, Work, Future, Benefit)
# 이중에서 4문항만 선택(Comfort, Work, Future, Benefit)
65번째 줄: 62번째 줄:
cat('BIC:', summary(model)$BIC, "\n")
cat('BIC:', summary(model)$BIC, "\n")
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=2>
# 계수
# 계수
coef(model)
coef(model)
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=2>
# 문항특성곡선
# 문항특성곡선
plot.grm(model)
plot.grm(model)
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=2>
# 문항정보곡선
# 문항정보곡선
plot(model, "IIC")
plot(model, "IIC")
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=2>
# 검사정보곡선
# 검사정보곡선
plot(model, "IIC", items=0)
plot(model, "IIC", items=0)
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=2>
# 모집단 능력 분포 추정 (커널 밀도)
# 모집단 능력 분포 추정 (커널 밀도)
plot(factor.scores(model))
plot(factor.scores(model))
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=2>
# 참가자 능력 분포 1 (히스토그램)
# 참가자 능력 분포 1 (히스토그램)
temp <- factor.scores(model)[[1]]
temp <- factor.scores(model)[[1]]
91번째 줄: 88번째 줄:
hist(temp)
hist(temp)
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang='r' notebook=ltm>
<syntaxhighlight lang='r' notebook=2>
# 참가자 능력 분포 2 (막대그래프)
# 참가자 능력 분포 2 (막대그래프)
temp <- factor.scores(model)[[1]]
temp <- factor.scores(model)[[1]]
102번째 줄: 99번째 줄:
* [[등급반응모형]]
* [[등급반응모형]]
* [[R 문항반응이론]]
* [[R 문항반응이론]]
* [[Python 등급반응모형]]


[[분류: R 문항반응이론]]
[[분류: R 문항반응이론]]

2024년 1월 3일 (수) 11:45 기준 최신판

1 개요[ | ]

R 등급반응모형

2 예시 1: 일반[ | ]

df <- read.csv("https://raw.githubusercontent.com/jmnote/ds/main/github.com/cran/ltm/data/Science.csv")
# 데이터셋에는 7문항(Comfort, Environment, Work, Future, Technology, Industry, Benefit)이 있는데,
# 이중에서 4문항만 선택(Comfort, Work, Future, Benefit)
df <- df[c(1,3,4,7)]
library(ltm)
model <- grm(df)

cat('로그우도:', model$log.Lik, "\n")
cat('AIC:', summary(model)$AIC, "\n")
cat('BIC:', summary(model)$BIC, "\n")
# 계수
coef(model)
# 문항특성곡선
plot.grm(model)
# 문항정보곡선
plot(model, "IIC")
# 검사정보곡선
plot(model, "IIC", items=0)
# 모집단 능력 분포 추정 (커널 밀도)
plot(factor.scores(model))
# 참가자 능력 분포 1 (히스토그램)
temp <- factor.scores(model)[[1]]
temp <- as.vector(rep(temp$z1, temp$Obs))
hist(temp)
# 참가자 능력 분포 2 (막대그래프)
temp <- factor.scores(model)[[1]]
temp$z1 <- round(temp$z1,2)
temp <- aggregate(Obs ~ z1, temp, sum)
barplot(Obs ~ z1, temp)

3 예시 2: 변별도 같다고 가정[ | ]

df <- read.csv("https://raw.githubusercontent.com/jmnote/ds/main/github.com/cran/ltm/data/Science.csv")
# 데이터셋에는 7문항(Comfort, Environment, Work, Future, Technology, Industry, Benefit)이 있는데,
# 이중에서 4문항만 선택(Comfort, Work, Future, Benefit)
df <- df[c(1,3,4,7)]
library(ltm)
model <- grm(df, constrained=TRUE)

cat('로그우도:', model$log.Lik, "\n")
cat('AIC:', summary(model)$AIC, "\n")
cat('BIC:', summary(model)$BIC, "\n")
# 계수
coef(model)
# 문항특성곡선
plot.grm(model)
# 문항정보곡선
plot(model, "IIC")
# 검사정보곡선
plot(model, "IIC", items=0)
# 모집단 능력 분포 추정 (커널 밀도)
plot(factor.scores(model))
# 참가자 능력 분포 1 (히스토그램)
temp <- factor.scores(model)[[1]]
temp <- as.vector(rep(temp$z1, temp$Obs))
hist(temp)
# 참가자 능력 분포 2 (막대그래프)
temp <- factor.scores(model)[[1]]
temp$z1 <- round(temp$z1,2)
temp <- aggregate(Obs ~ z1, temp, sum)
barplot(Obs ~ z1, temp)

4 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}