public class Irm4PL extends AbstractItemResponseModel
groupId, isFixed, maxCategory, maxWeight, minCategory, minWeight, name, ncat, ncatM1, scoreWeight
Constructor and Description |
---|
Irm4PL(double discrimination,
double difficulty,
double guessing,
double slipping,
double D)
Constructor for four parameter logistic model
|
Modifier and Type | Method and Description |
---|---|
double |
acceptAllProposalValues()
Proposal values for every item parameter are obtained at each iteration of the estimation routine.
|
double |
addPriorsToLogLikelihood(double loglike,
double[] iparam)
This method is used for marginal maximum likelihood estimation.
|
double[] |
addPriorsToLogLikelihoodGradient(double[] loglikegrad,
double[] iparam)
This method is used for marginal maximum likelihood estimation.
|
double |
cumulativeProbability(double theta,
int category)
Not implemented.
|
double |
derivTheta(double theta)
Computes the first derivative with respect to person ability.
|
double |
expectedValue(double theta)
Computes the expected value, which is the same as the probability of a correct response.
|
double |
getDifficulty()
Gets the item difficulty parameter.
|
ItemParamPrior |
getDifficultyPrior() |
double |
getDifficultyStdError()
Gets the item difficulty standard error.
|
double |
getDiscrimination()
Gets item discrimination.
|
ItemParamPrior |
getDiscriminationPrior() |
double |
getDiscriminationStdError()
Gets the standard error for the item discrimination estimate.
|
double |
getGuessing()
Gets the pseudo-guessing (i.e.
|
ItemParamPrior |
getGuessingPrior() |
double |
getGuessingStdError()
Gets the guessing parameter estimate standard error.
|
double[] |
getItemParameterArray() |
int |
getNumberOfEstimatedParameters()
Number of estimated parameters does not count any values fixed during estimation.
|
int |
getNumberOfParameters()
Gets the number of item parameters.
|
double |
getProposalDifficulty()
A proposal difficulty value is obtained during each iteration of the estimation routine.
|
double |
getProposalDiscrimination() |
double |
getScalingConstant() |
double |
getSlipping()
Gets the slipping (i.e.
|
ItemParamPrior |
getSlippingPrior() |
double |
getSlippingStdError()
Gets the guessing parameter estimate standard error.
|
double[] |
getStepParameters()
Polytomous item response models may have step parameters.
|
double[] |
getStepStdError()
Gets that standard errors for each step parameter estimate.
|
double[] |
getThresholdParameters()
Polytomous item response models may use an overall item difficulty parameter and two or more threshold
parameters.
|
double[] |
getThresholdStdError()
Gets the array of standard errors fort eh threshold parameter estimates.
|
IrmType |
getType()
Gets the type of item response model.
|
double[] |
gradient(double theta,
double[] iparam,
int k,
double D)
Computes the gradientAt (vector of first partial derivatives) with respect to the item parameters.
|
double[] |
gradient(double theta,
int k)
Computes gradientAt using item parameters stored in the object.
|
void |
incrementMeanMean(org.apache.commons.math3.stat.descriptive.moment.Mean meanDiscrimination,
org.apache.commons.math3.stat.descriptive.moment.Mean meanDifficulty)
Mean/mean linking coefficients are computed from the mean item difficulty and mean item discrimination.
|
void |
incrementMeanSigma(org.apache.commons.math3.stat.descriptive.moment.Mean mean,
org.apache.commons.math3.stat.descriptive.moment.StandardDeviation sd)
Mean/sigma linking coefficients are computed from the mean and standard deviation of item difficulty.
|
double |
itemInformationAt(double theta)
Computes the item information function at theta.
|
double[] |
nonZeroPrior(double[] param)
If the prior density for a parameter is zero, adjust parameter to the nearest non zero value.
|
double |
probability(double theta,
double[] iparam,
int response,
double D)
Computes probability of a correct response using value provided to the method, not the parameters
stored in the object.
|
double |
probability(double theta,
int response)
Computes the probability of a correct response given parameters stored in the object.
|
void |
scale(double intercept,
double slope)
Linear transformation of item parameters.
|
void |
setDifficulty(double difficulty)
Set difficulty parameter to an existing value.
|
void |
setDifficultyPrior(ItemParamPrior difficultyPrior) |
void |
setDifficultyStdError(double stdError)
Item difficulty standard error may be computed external to the class.
|
void |
setDiscrimination(double discrimination)
Set discrimination parameter to an existing value.
|
void |
setDiscriminationPrior(ItemParamPrior discriminationPrior) |
void |
setDiscriminationStdError(double stdError)
The standard error may be computed external to the class.
|
void |
setGuessing(double guessing)
Set lower asymptote parameter to an existing value.
|
void |
setGuessingPrior(ItemParamPrior guessingPrior) |
void |
setGuessingStdError(double stdError)
The guessing parameter standard error may be computed external to the class.
|
void |
setProposalDifficulty(double proposalDifficulty)
A proposal difficulty value is obtained during each iteration of the estimation routine.
|
void |
setProposalDiscrimination(double discrimination)
Set the proposed discrimination estimate.
|
void |
setProposalGuessing(double guessing)
A proposal guessing parameter value is obtained during each iteration of the estimation routine.
|
void |
setProposalSlipping(double slipping)
A proposal slipping parameter value is obtained during each iteration of the estimation routine.
|
void |
setProposalStepParameters(double[] step) |
void |
setProposalThresholds(double[] thresholds)
Sets the proposed threshold parameters estimates to particular values.
|
void |
setSlipping(double slipping)
Set upper asymptote parameter to an existing value.
|
void |
setSlippingPrior(ItemParamPrior slippingPrior) |
void |
setSlippingStdError(double stdError)
The guessing parameter standard error may be computed external to the class.
|
void |
setStandardErrors(double[] x) |
void |
setStepParameters(double[] step) |
void |
setStepPriorAt(ItemParamPrior prior,
int index) |
void |
setStepStdError(double[] stdError)
Sets the standard error for the step parameter estimates.
|
void |
setThresholdParameters(double[] thresholdParameters)
Sets the threshold parameters to particular values.
|
void |
setThresholdStdError(double[] stdError)
Set the threshold standard errors.
|
java.lang.String |
toString()
A string representaiton of the item parameters.
|
double |
tSharpExpectedValue(double theta,
double intercept,
double slope)
Computes probability of a response under a linear transformation.
|
double |
tSharpProbability(double theta,
int response,
double intercept,
double slope)
Computes probability of a response under a linear transformation.
|
double |
tStarExpectedValue(double theta,
double intercept,
double slope)
Computes item expected value under a linear transformation.
|
double |
tStarProbability(double theta,
int response,
double intercept,
double slope)
Computes probability of a response under a linear transformation.
|
defaultScoreWeights, getGroupId, getItemFitStatistic, getItemScoring, getMaxScoreWeight, getMinScoreWeight, getName, getNcat, getScoreWeights, isFixed, setFixed, setGroupId, setItemFitStatistic, setItemScoring, setName, setScoreWeights
public Irm4PL(double discrimination, double difficulty, double guessing, double slipping, double D)
discrimination
- item discrimination parameterdifficulty
- item difficulty parameterguessing
- lower-asymptote parameterslipping
- upper-asymptote parameterD
- scaling factor that is either 1, 1.7 or 1.702public double probability(double theta, double[] iparam, int response, double D)
theta
- person ability parameter.iparam
- array of item parameters. The order is important and will be unique to each implementation of the interface.response
- an item response category.D
- a scaling constant that is either 1 or 1.7 or 1.702.public double probability(double theta, int response)
theta
- a person ability value.response
- an item response (i.e. a person's score on an item).public double expectedValue(double theta)
theta
- a person ability value.public double cumulativeProbability(double theta, int category)
theta
- a person ability valuecategory
- response categorypublic double[] gradient(double theta, double[] iparam, int k, double D)
theta
- person ability estimate.iparam
- array of item parameters.k
- response categoryD
- scaling constant that is either 1 or 1.7public double[] gradient(double theta, int k)
theta
- person ability valuek
- response categorypublic double derivTheta(double theta)
ItemResponseModel
theta
- a person ability value.public double itemInformationAt(double theta)
ItemResponseModel
theta
- person ability value.public double[] nonZeroPrior(double[] param)
ItemResponseModel
public void setDiscriminationPrior(ItemParamPrior discriminationPrior)
public void setDifficultyPrior(ItemParamPrior difficultyPrior)
public void setGuessingPrior(ItemParamPrior guessingPrior)
public void setSlippingPrior(ItemParamPrior slippingPrior)
public void setStepPriorAt(ItemParamPrior prior, int index)
public ItemParamPrior getDiscriminationPrior()
public ItemParamPrior getDifficultyPrior()
public ItemParamPrior getGuessingPrior()
public ItemParamPrior getSlippingPrior()
public double addPriorsToLogLikelihood(double loglike, double[] iparam)
loglike
- value of the loglikelihood functioniparam
- an item parameter array in a specific order.public double[] addPriorsToLogLikelihoodGradient(double[] loglikegrad, double[] iparam)
loglikegrad
- values of the loglikelihood gradient functioniparam
- an item parameter array in a specific order.public void incrementMeanSigma(org.apache.commons.math3.stat.descriptive.moment.Mean mean, org.apache.commons.math3.stat.descriptive.moment.StandardDeviation sd)
mean
- item difficulty mean.sd
- item difficulty standard deviation.public void incrementMeanMean(org.apache.commons.math3.stat.descriptive.moment.Mean meanDiscrimination, org.apache.commons.math3.stat.descriptive.moment.Mean meanDifficulty)
meanDiscrimination
- item discrimination mean.meanDifficulty
- item difficulty mean.public double tStarProbability(double theta, int response, double intercept, double slope)
StockingLordMethod
).
It applies the linear transformation such that the New form is transformed to the Old Form.theta
- examinee proficiency valueresponse
- target categoryintercept
- linking coefficient for interceptslope
- linking coefficient for slopepublic double tSharpProbability(double theta, int response, double intercept, double slope)
StockingLordMethod
).
It applies the linear transformation such that the Old form is transformed to the New Form.theta
- examinee proficiency valueresponse
- target categoryintercept
- linking coefficient for interceptslope
- linking coefficient for slopepublic double tStarExpectedValue(double theta, double intercept, double slope)
StockingLordMethod
).
It applies the linear transformation such that the New form is transformed to the Old Form.theta
- person ability valueintercept
- intercept linking coefficient.slope
- slope linking coefficient.public double tSharpExpectedValue(double theta, double intercept, double slope)
StockingLordMethod
).
It applies the linear transformation such that the Old form is transformed to the New Form.theta
- examinee proficiency valueintercept
- linking coefficient for interceptslope
- linking coefficient for slopepublic void scale(double intercept, double slope)
intercept
- intercept transformation coefficient.slope
- slope transformation coefficient.public double[] getItemParameterArray()
public void setStandardErrors(double[] x)
public IrmType getType()
public int getNumberOfParameters()
public int getNumberOfEstimatedParameters()
ItemResponseModel
public double getDifficulty()
public void setDifficulty(double difficulty)
setProposalDifficulty(double)
.public double getProposalDifficulty()
public void setProposalDifficulty(double proposalDifficulty)
proposalDifficulty
- proposed item difficulty value.public double getDifficultyStdError()
public void setDifficultyStdError(double stdError)
stdError
- item difficulty standard error.public double getDiscrimination()
public void setDiscrimination(double discrimination)
setProposalDiscrimination(double)
.public double getProposalDiscrimination()
public void setProposalDiscrimination(double discrimination)
discrimination
- proposed item discrimination value.public double getDiscriminationStdError()
public void setDiscriminationStdError(double stdError)
stdError
- item discrimination standard error.public double getGuessing()
public void setGuessing(double guessing)
setProposalGuessing(double)
.public void setProposalGuessing(double guessing)
guessing
- proposed guessing parameter estimate.public double getGuessingStdError()
public void setGuessingStdError(double stdError)
stdError
- standard error for the guessing parameter estimate.public double getSlipping()
public void setSlipping(double slipping)
setProposalGuessing(double)
.public void setProposalSlipping(double slipping)
slipping
- proposed slipping parameter estimate.public double getSlippingStdError()
public void setSlippingStdError(double stdError)
stdError
- standard error for the slipping parameter estimate.public double getScalingConstant()
public double acceptAllProposalValues()
public double[] getStepParameters()
ItemResponseModel
public void setStepStdError(double[] stdError)
ItemResponseModel
stdError
- an array of standard errors for the step parameters.public double[] getStepStdError()
ItemResponseModel
public double[] getThresholdParameters()
ItemResponseModel
public double[] getThresholdStdError()
ItemResponseModel
public void setThresholdStdError(double[] stdError)
ItemResponseModel
stdError
- an array of standard errors for the threshold paramter estimates.public void setStepParameters(double[] step)
public void setProposalStepParameters(double[] step)
public void setThresholdParameters(double[] thresholdParameters)
ItemResponseModel
ItemResponseModel.setFixed(boolean)
.thresholdParameters
- array of threshold parameters.public void setProposalThresholds(double[] thresholds)
ItemResponseModel
ItemResponseModel.setFixed(boolean)
.thresholds
- array of proposed threshold parameter estimates.public java.lang.String toString()
toString
in class java.lang.Object