我正在尝试使用R
中的simdata()
包通过confmirt()
函数模拟多维项目响应模型的响应。
jstat article introducing the package模拟数据用于说明library(mirt)
a <- matrix(c(1.5, NA, 0.5, NA, 1, NA, 1, 0.5, NA, 1.5, NA, 0.5,
NA, 1, NA, 1), ncol = 2, byrow = TRUE)
d <- matrix(c(-1, NA, NA, -1.5, NA, NA, 1.5, NA, NA, 0, NA, NA,
3, 2, -0.5, 2.5, 1, -1, 2, 0, NA, 1, NA, NA),
ncol = 3, byrow = TRUE)
sigma <- diag(2)
sigma[1, 2] <- sigma[2, 1] <- 0.4
simdata2 <- simdata(a, d, 2000, sigma)
函数,用于生成模拟数据的代码见附录B,
simdata()
这不起作用,因为simdata2 <- simdata(a, d, 2000, "dich", sigma)
函数已经更新,现在需要指定项类型。但是,当我尝试通过将项目类型指定为二分法Error in sample.int(length(x), size, replace, prob): too few positive probabilities
来修改代码时,该函数仍然无法运行,我收到标题timer = new QTimer();
timer->setTimerType(Qt::PreciseTimer);
connect(timer, SIGNAL(timeout()), this, SLOT(read_shape_params()));
//in a loop stop timer and setup the next video stream then start
void next(){
timer->stop();
stream = new video_stream_reader();
stream->setColorGray(grayImage);
stream->set_begin_end(begin_at,end_at);
stream->open(video_base_path+video_path);
timer->start(0);
}
void shape_param_finder::read_shape_params(){
Mat frame;
frame = stream->read_frame();
}
Mat video_stream_reader::read_frame(){
Mat frame;
bool bSuccess = capture->read(frame);
return frame;
}
中注明的错误。
我试图深入研究这一点,试图了解发生了什么,但没有成功。如果我能理解导致错误的原因,当我尝试创建自己的模拟数据集时,它会帮助我避免它(在我的初始试验中,我确实收到了同样的错误)。提出的问题here类似,但我仍然无法确切地确定导致错误的原因。
提前致谢。