ResearchTopics Publications In progress publications Communications
PackagesAnaQol Project PRO-online R Packages Online R-package
Life of the unitProjects Collaborations PhD thesis Traineeships Traineeships propositions Seminars
25 juillet 2019
28 juin 2019
01 juin 2019
01 mai 2019
11 avril 2019
Updated19 août 2019
The Stata module "Validscale"
-validscale- assesses validity and reliability of a multidimensional scale. This program computes elements to provide structural validity, convergent and divergent validity, reproducibility, known-groups validity, internal consistency, scalability and sensitivity.
Type "findit validscale" or "ssc install validscale" directly from your Stata browser.
Syntax (version 1.2)
validscale varlist [, partition(numlist) scorename(string) scores(varlist) modalities(numlist) impute noround compscore(method) descitems graphs cfa cfamethod(method) cfastand cfacovs cfaauto convdiv tconvdiv(#) convdivboxplots alpha(#) delta(#) h(#) hjmin(#) repet(varlist) kappa ickappa(#) scores2(varlist) kgv(varlist) kgvboxplots kgvgroupboxplots conc(varlist) tconc(#) ]
This program requires an access to the following program(s):
- partition(numlist): defines the number of items in each dimension. The number of elements of this list indicates the number of dimensions.
- 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.
- modalities(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 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: 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.
- noround: 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 biplot of 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).
- cfastand: displays standardized coefficients for the CFA.
- cfacovs: allows adding covariances between measurement errors. You can look at the examples to see the syntax of this option.
- cfaauto: adds automatically the covariances of measurement errors found with the estat mindices command. The option only adds the covariances of measurement errors within a dimension.
- 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 those 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. So 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.
- 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 the ickappa(#) option 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.
- kgvboxplots: draws boxplots of the scores split into groups of individuals.
- kgvgroupboxplots: groups all boxplots in 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 those of other scales defined in varlist. Correlation coefficients greater than # (0.4 by default) are displayed in bold.
validscale item1-item20, part(5 4 6 5)
validscale item1-item20, part(5 4 6 5) imp(pms) 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(pms) scores(s1-s4) rep(item1bis-item20bis) scores2(s1bis-s4bis) kappa