The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

Title: A Topic Testlet Model for Calibrating Testlet Constructed Responses
Version: 0.1.0
Description: Implements the Topic Testlet Model (TTM) as described by Xiong et al. (2025) <doi:10.1111/jedm.70001>. The package integrates Latent Dirichlet Allocation (LDA) with the Partial Credit Model to account for local item dependence in testlets using latent topics from student textual responses.
Depends: R (≥ 4.0.0)
Imports: topicmodels, tm, stats
License: GPL (≥ 3)
Encoding: UTF-8
RoxygenNote: 7.3.2
Suggests: knitr, rmarkdown
VignetteBuilder: knitr
NeedsCompilation: no
Packaged: 2025-11-25 03:35:49 UTC; jx
Author: Jiawei Xiong [aut, cre], Cheng Tang [ctb], Qidi Liu [ctb]
Maintainer: Jiawei Xiong <jiawei.xiong@uga.edu>
Repository: CRAN
Date/Publication: 2025-12-01 14:00:02 UTC

Concatenate Student Responses

Description

Aggregates all written responses within a testlet for each student.

Usage

aggregate_responses(response_matrix)

Arguments

response_matrix

An N x J matrix of character strings (essays).

Value

A named character vector of length N.


Fit the Topic Testlet Model (TTM)

Description

Calibrates the TTM using score data and pre-computed topic proportions. Uses a Variational Expectation-Maximization (VEM) approach to estimate student ability (theta), topic penalties (lambda), and item parameters (b).

Usage

ttm_est(scores, delta, max_iter = 100, tol = 1e-04)

Arguments

scores

An N x J numeric matrix of item scores (0, 1, ...).

delta

An N x K numeric matrix of topic proportions (from ttm_lda).

max_iter

Maximum number of EM iterations.

tol

Convergence tolerance.

Value

A list containing:

theta

Vector of estimated student abilities.

lambda

Matrix of estimated topic penalties.

gamma

Vector of person-specific testlet effects.

item_params

List of step difficulties for each item.

AIC

Akaike Information Criterion.

BIC

Bayesian Information Criterion.


Fit LDA and Extract Topic Proportions

Description

Fits a Latent Dirichlet Allocation model to the text and returns the person-specific topic proportion matrix (delta).

Usage

ttm_lda(text_vector, k, seed = 1234)

Arguments

text_vector

A character vector of aggregated student responses.

k

The number of latent topics.

seed

Integer seed for reproducibility.

Value

A matrix of dimension N x K containing topic proportions (delta).


Calculate Perplexity for Different Topic Numbers

Description

Calculates the perplexity of LDA models over a range of K topics to help determine the optimal number of topics.

Usage

ttm_perplexity(text_vector, k_range = 2:5, seed = 1234)

Arguments

text_vector

A character vector of aggregated student responses (length N).

k_range

A numeric vector indicating the number of topics to try (e.g., 2:10).

seed

Integer seed for reproducibility.

Value

A data frame containing K and the corresponding perplexity score.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.