public class IrtExaminee
extends java.lang.Object
implements org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction
Constructor and Description |
---|
IrtExaminee(java.util.ArrayList<ItemResponseModel> irm) |
IrtExaminee(ItemResponseModel[] irm)
this constructor allows a single instance to be used for estimating ability for multiple people
by calling setResponseVector() prior to calling for amethod to compute ability.
|
IrtExaminee(ItemResponseModel[] irm,
ItemResponseVector responseVector) |
IrtExaminee(java.util.LinkedHashMap<VariableName,ItemResponseModel> irm) |
IrtExaminee(java.lang.String groupID,
ItemResponseModel[] irm)
this constructor allows a single instance to be used for estimating ability for multiple people
by calling setResponseVector() prior to calling for amethod to compute ability.
|
IrtExaminee(java.lang.String groupID,
ItemResponseModel[] irm,
ItemResponseVector responseVector) |
Modifier and Type | Method and Description |
---|---|
org.apache.commons.math3.analysis.differentiation.DerivativeStructure |
derivLogLikelihood(org.apache.commons.math3.analysis.differentiation.DerivativeStructure t)
Returns first derivative of loglikelihood using DerivativeStructure per interface requirements
|
double |
derivLogLikelihood(double theta)
First derivative of loglikelihood with respect to theta.
|
double |
eapEstimate(DistributionApproximation dist)
EAP estimate using a distribution provided by the user such as quadrature points
and weights from item calibration.
|
double |
eapEstimate(double mean,
double sd,
double thetaMin,
double thetaMax,
int numPoints)
Expected a Posteriori (EAP) estimate of examinee ability using a normal distribution.
|
double |
eapStandardErrorAt(double theta)
Computes standard error for EAP method.
|
double |
getAdjustedSumScore(double adjustment) |
ItemResponseVector |
getResponseVector() |
double |
getTheta() |
boolean |
isExtreme() |
double |
logLikelihood(double theta)
computes the loglikelihood of a responseVector vector at a given value of theta.
|
double |
mapEstimate(double mean,
double sd,
double thetaMin,
double thetaMax) |
double |
mapEstimate(double mean,
double sd,
double thetaMin,
double thetaMax,
int maxIter,
double tolerance)
Maximum a Posteriori (MAP) estimate of examinee ability using a normal prior
distribution.
|
double |
mapStandardErrorAt(double theta) |
double |
maximumLikelihoodEstimate(double thetaMin,
double thetaMax) |
double |
maximumLikelihoodEstimate(double thetaMin,
double thetaMax,
int maxIter,
double tolerance)
Maximum likelihood estimate (MLE) of examinee ability.
|
boolean |
missingResponseAt(int index) |
double |
mleStandardErrorAt(double theta) |
double |
pcfEstimate(int maxIter,
double converge,
double adjustment)
Computes ability estimate using proportional curve fitting.
|
double |
pcfStandardErrorAt(double theta) |
void |
setResponseVector(byte[] responseVector) |
void |
setResponseVector(ItemResponseVector responseVector)
If the response vector was not set in teh constructor, this method must be called
prior to estimating ability.
|
void |
setStartValue(double theta) |
double |
testInformationAt(double theta) |
org.apache.commons.math3.analysis.differentiation.DerivativeStructure |
value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure t)
Returns value of loglikelihood using DerivativeStructure per interface requirements
|
double |
value(double param) |
public IrtExaminee(java.lang.String groupID, ItemResponseModel[] irm, ItemResponseVector responseVector) throws org.apache.commons.math3.exception.DimensionMismatchException
org.apache.commons.math3.exception.DimensionMismatchException
public IrtExaminee(ItemResponseModel[] irm, ItemResponseVector responseVector) throws org.apache.commons.math3.exception.DimensionMismatchException
org.apache.commons.math3.exception.DimensionMismatchException
public IrtExaminee(java.lang.String groupID, ItemResponseModel[] irm)
groupID
- examinee group IDirm
- an array of item response modelspublic IrtExaminee(ItemResponseModel[] irm)
irm
- an array of item response modelspublic IrtExaminee(java.util.ArrayList<ItemResponseModel> irm)
public IrtExaminee(java.util.LinkedHashMap<VariableName,ItemResponseModel> irm)
public void setResponseVector(ItemResponseVector responseVector)
responseVector
- public void setResponseVector(byte[] responseVector)
public void setStartValue(double theta)
public ItemResponseVector getResponseVector()
public boolean missingResponseAt(int index)
public double getAdjustedSumScore(double adjustment)
public boolean isExtreme()
public double logLikelihood(double theta)
theta
- examinee abilitypublic double derivLogLikelihood(double theta)
theta
- examinee abilitypublic double maximumLikelihoodEstimate(double thetaMin, double thetaMax, int maxIter, double tolerance)
thetaMin
- smallest possible ability estimate (lower bound on BrentOptimizer)thetaMax
- largest possible ability estimate (upper bound on BrentOptimizer)public double maximumLikelihoodEstimate(double thetaMin, double thetaMax)
public double mapEstimate(double mean, double sd, double thetaMin, double thetaMax, int maxIter, double tolerance)
mean
- mean of normal prior distributionsd
- standard deviation of prior distributionthetaMin
- smallest possible ability estimate (lower bound on BrentOptimizer)thetaMax
- largest possible ability estimate (upper bound on BrentOptimizer)public double mapEstimate(double mean, double sd, double thetaMin, double thetaMax)
public double eapEstimate(double mean, double sd, double thetaMin, double thetaMax, int numPoints)
mean
- mean of normal distributionsd
- standard deviation of normal distributionthetaMin
- smallest possible ability scorethetaMax
- largest possible ability scorenumPoints
- number of quadrature pointspublic double eapEstimate(DistributionApproximation dist)
dist
- User specified quadrature points and weights.public double pcfEstimate(int maxIter, double converge, double adjustment)
maxIter
- maximum number of iterationsconverge
- convergence criterion (e.g. 0.01)adjustment
- extreme score (i.e. all items correct) adjustment factorpublic double testInformationAt(double theta)
public double eapStandardErrorAt(double theta)
theta
- person ability valuepublic double mleStandardErrorAt(double theta)
public double mapStandardErrorAt(double theta)
public double pcfStandardErrorAt(double theta)
public double getTheta()
public org.apache.commons.math3.analysis.differentiation.DerivativeStructure value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure t)
value
in interface org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction
t
- public org.apache.commons.math3.analysis.differentiation.DerivativeStructure derivLogLikelihood(org.apache.commons.math3.analysis.differentiation.DerivativeStructure t)
t
- public double value(double param)
value
in interface org.apache.commons.math3.analysis.UnivariateFunction