help for validscaleBastien Perrot

Syntax

validscale varlist, partition(numlist) [options]

varlist contains the variables (items) used to compute the scores. The first items of varlist compose the first dimension, the following items define the second dimension, and so on.

partition allows defining in numlist the number of items in each dimension.

Options
scorename(string) define the names of the dimensions

scores(varlist) use scores from the dataset

categories(numlist) define minimum and maximum response categories for the items

impute(method) impute missing item responses

impute_options options for imputation of missing data

compscore(method) define how scores are computed

descitems display a descriptive analysis of items and dimensions

graphs display graphs for items description

cfa assess structural validity of the scale by performing a confirmatory factor analysis (CFA)

cfa_options options for confirmatory factor analysis (CFA)

convdiv assess convergent and divergent validities assessment

conv_div_options options for convergent and divergent validities

reliability_options options for reliability assessment

repet(varlist) assess reproducibility of scores and items

repet_options options for reproducibility

kgv(varlist) assess known-groups validity by using qualitative variable(s)

kgv_options options for known-groups validity assessment

conc(varlist) assess concurrent validity

conc_options options for concurrent validity assessment

* options from sem_estimation_options command (additional estimation options for cfa_options)

Description

validscale assesses validity and reliability of a multidimensional scale. Elements to provide
structural validity, convergent and divergent validity, reproducibility, known-groups validity, internal consistency, scalability and sensitivity are computed. validscale can be used with a dialog box by typing db validscale.

Options

Options

scorename(string) allows defining the names of the dimensions. If the option is not used, the dimensions are named Dim1, Dim2,... unless scores(varlist) is used.

scores(varlist) allows selecting scores from the dataset. scores(varlist) and scorename(string) cannot be used together.

categories(numlist) allows specifying the minimum and maximum possible values for items responses. If all the items have the same response
categories, the user may specify these 2 values in numlist. If the items response categories differ from a dimension to another, the user must define the possible minimum and maximum values of items responses for each
dimension. So the number of elements in numlist must be equal to the number of dimensions times 2. Eventually, the user may specify the minimum and maximum response categories for each item. In this case, the
number of elements in numlist must be equal to the number of items times 2. By default, the minimum and maximum values are assumed to be the minimum and maximum for each item.

impute(method) imputes missing items responses with Person Mean Substitution (pms) or Two-way imputation method applied in each dimension (mi). With PMS method, missing data are imputed only if the number of
missing values in the dimension is less than half the number of items in the dimension.

By default, imputed values are rounded to the nearest whole number but with the noround option, imputed values are not rounded. If impute is absent then noround is ignored.

compscore(method) defines the method used to compute the scores. method may be either mean (default), sum or stand(set scores from 0 to 100). compscore(method) is ignored
if the scores(varlist) option is used.

descitems displays a descriptive analysis of the items. This option displays missing data rate per item and distribution of item responses. It also computes for each item the Cronbach's alphas
obtained by omitting each item in each dimension. Moreover, the option computes Loevinger's Hj coefficients and the number of non-significant Hjk. See loevh for details about Loevinger's coefficients.

graphs displays graphs for items and dimensions descriptive analyses. It provides histograms of scores, a biplot of the scores and a graph showing the correlations between the items.

cfa performs a Confirmatory Factor Analysis (CFA) using sem command. It displays estimations of parameters and several goodness-of-fit indices.

cfamethod(method) specifies the method to estimate the parameters. method may be either ml (maximum
likelihood), mlmv (ml with missing values) or adf (asymptotic distribution free).

cfasb produces Satorra-Bentler adjusted goodness-of-fit indices using the vce(sbentler) option from sem (sem_option_method)

cfastand displays standardized coefficients.

cfanocovdim asserts that the latent variables are not correlated.

cfacovs option allows adding covariances between measurement errors. The syntax cfacov(item1*item2)
allows estimating the covariance between the errors of item1 and item3. To specify more than one covariance, the form of the syntax is cfacov(item1*item2 item3*item4).

cfarmsea(#) option allows adding automatically the covariances between measurement errors found
with the estat mindices command until the RMSEA (Root Mean Square Error
of Approximation) of the model is less than #. More precisely, the "basic" model
(without covariances between measurement errors) is estimated then we add the covariance corresponding to the greatest modification index and the model is re-
estimated with this extra-parameter, and so on. The option only adds the covari-
ances between measurement errors within a dimension and can be combined with
cfacov. The specified value # may not be reached if all possible within-dimension
measurement errors have already been added.

cfacfi(#) option allows adding automatically the covariances between measurement errors found with
the estat mindices command until the CFI (Comparative Fit Index) of the model
is greater than #. More precisely, the "basic" model (without covariances between
measurement errors) is estimated then we add the covariance corresponding to the
greatest modification index and the model is re-estimated with this extra-parameter,
and so on. The option only adds the covariances between measurement errors within
a dimension and can be combined with cfacov. The specified value # may not
be reached if all possible within-dimension measurement errors have already been
added.

cfaor option is useful when both cfarmsea and cfacfi are used. By default, covariances between measurement errors are added and the model is estimated until both RMSEA
and CFI criteria are met. If cfaor is used, the estimations stop when one of the two
criteria is met.

* options from sem_estimation_options (e.g. iterate(#), vce(vcetype), etc.)

convdiv assesses convergent and divergent validities. The option displays the matrix of correlations between items and rest-scores. If scores(varlist) is used, then the correlations coefficients are computed between
items and scores of scores(varlist).

tconvdiv(#) defines a threshold for highlighting some values. # is a real number between 0 and 1 which is equal to 0.4 by
default. Correlations between items and their own score are displayed
in red if it is less than #. Moreover, if an item has a smaller correlation coefficient with the score of its own dimension than the correlation coefficient computed with other scores, this coefficient is displayed
in red.

convdivboxplots displays boxplots for assessing convergent and divergent validities. The boxes represent the correlation coefficients between the items of a given dimension and all scores. Thus the
box of correlation coefficients between items of a given dimension and the corresponding score must be higher than other boxes. There are as many boxplots as dimensions.

reliability_options allow defining the thresholds for reliability and scalability indices.

alpha(#) defines a threshold for Cronbach's alpha (see alpha). # is a real number between 0 and 1 which is equal to 0.7
by default. Cronbach's alpha coefficients less than # are printed in red.

delta(#) defines a threshold for Ferguson's delta coefficient (see delta). Delta coefficients are computed only if compscore(sum) is used
and scores(varlist) is not used. # is a real number between 0 and 1 which is equal to 0.9
by default. Ferguson's delta coefficients less than # are printed in red.

h(#) defines a threshold for Loevinger's H coefficient (see loevh). # is a real number between 0 and 1 which is equal to
0.3 by default. Loevinger's H coefficients less than # are printed in red.

hjmin(#) defines a threshold for Loevinger's Hj coefficients. The displayed value is the minimal Hj coefficient for a item in the dimension. (see loevh). # is a real number between 0 and 1 which is equal to
0.3 by default. If the minimal Loevinger's Hj coefficient is less than # then it is printed in red and the corresponding item is displayed.

repet(varlist) assesses reproducibility of scores by defining in varlist the variables corresponding to responses at time 2 (in the same order than for time 1). Scores are computed according to
the partition() option. Intraclass
Correlation Coefficients (ICC) for scores and their 95% confidence interval are computed with Stata's icc command.

kappa computes kappa statistic for items with Stata's kap command.

ickappa(#) computes confidence intervals for kappa statistics using kapci. # is the number of replications for bootstrap used to estimate confidence intervals if items are polytomous. If they are dichotomous, an analytical method is used. See kapci for more details about
calculation of confidence intervals for kappa's coefficients. If the kappa option is absent then ickappa(#) is ignored.

scores2(varlist) allows selecting scores at time 2 from the dataset.

kgv(varlist) assesses known-groups validity according to the grouping variables defined in varlist. The option performs an ANOVA which compares the scores between groups of individuals, constructed with variables in varlist. A p-value based on a Kruskal-Wallis test is also given.

kgvboxplots draws boxplots of the scores split into groups of individuals.

kgvgroupboxplots groups all boxplots into one graph. If kgvboxplots is absent then the kgvgroupboxplots option is ignored.

conc(varlist) assesses concurrent validity with variables precised in varlist. These variables are scores from one or several other scales.

tconc(#) defines a threshold for correlation coefficients between the computed scores and the scores of other scales defined in varlist. Correlation
coefficients greater than # (0.4 by default) are displayed in bold.

Examples

. validscale item1-item20, part(5 4 6 5)

. validscale item1-item20, part(5 4 6 5) imp graphs cfa cfastand cfacovs(item1*item3 item5*item7 item17*item18) convdiv convdivboxplots kgv(factor_variable) kgvboxplots conc(scoreA-scoreD)

. validscale item1-item20, part(5 4 6 5) imp scores(s1-s4) rep(item1bis-item20bis) scores2(s1bis-s4bis) kappa

References

Blanchette, D. 2010. LSTRFUN: Stata module to modify long local macros. Statistical Software Components, Boston College Department of Economics.

Gadelrab, H. 2010. Evaluating the fit of structural equation models: Sensitivity to specification error and descriptive goodness-of-fit indices. Lambert Academic Publishing.

Hamel, J.-F. 2014. MI TWOWAY: Stata module for computing scores on questionnaires containing missing item responses. Statistical Software Components, Boston College Department of Economics.

Hardouin, J.-B. 2004. LOEVH: Stata module to compute Guttman errors and Loevinger H coeficients. Statistical Software Components, Boston College Department of Economics.

Hardouin, J.-B. 2007. DELTA: Stata module to compute the Delta index of scale discrimination. Statistical Software Components, Boston College Department of Economics.

Hardouin, J.-B. 2013. IMPUTEITEMS: Stata module to impute missing data of binary items.

Hardouin, J.-B., A. Bonnaud-Antignac, V. Sbille, et al. 2011. Nonparametric item response theory using Stata. Stata Journal 11(1): 30.

Reichenheim, M. E. 2004. Confidence intervals for the kappa statistic. Stata Journal 4(4): 421{428(8).

Author

Bastien Perrot, EA 4275 SPHERE, "methodS in Patient-centered outomes and HEalth ResEarch", University of Nantes, France
bastien.perrot@univ-nantes.fr

Also see

help for alpha, delta, loevh, icc, kapci.