Computed theoretical power for N=100 and N=200 scenarios

This commit is contained in:
2024-02-19 18:35:26 +01:00
parent ac9189d26a
commit 238852b08b
704 changed files with 261610 additions and 187 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,103 @@
{smcl}
{* 6november2004}{...}
{hline}
help for {hi:loevH}{right:Jean-Benoit Hardouin}
{hline}
{title:Loevinger's H coefficients and non parametric Item Responses Models}
{p 8 14 2}{cmd:loevH} {it:varlist} [{cmd:,} {cmdab:pairw:ise} {cmdab:pair} {cmdab:ppp} {cmdab:pmm} {cmdab:noadj:ust} {cmdab:gener:ror}({it:newvar}) {cmdab:rep:lace} {cmdab:gr:aph} {cmdab:mono:tonicity}({it:string}) {cmdab:nip:matrix}({it:string})]
{p 8 14 2}{it:varlist} is a list of two or more existing dichotomous ou polytomous variables.
{title:Description}
{p 4 8 2}{cmd:loevH} allows verifying the fit of data to the Monotonely Homogeneous Mokken Model or to the Doubly Monotone Mokken Model.
It computes the Loevinger H scalability coefficients, and several indexes in the field of the Non parametric Item Response Theory.
{title:Options}
{p 4 8 2}{cmd:pairwise}. By default, all the individuals with one or more missing values are omitted. {cmd:pairwise} allows to use the complete information by pair of items.
{p 4 8 2}{cmd:pair} displays statistics and the value of the Loevinger H coefficient for each pair of items.
{p 4 8 2}{cmd:ppp} displays the P++ matrix.
{p 4 8 2}{cmd:pmm} displays the P-- matrix.
{p 4 8 2}{cmd:noadjust} approximates the tests statistics like the MSP software (Molenaar et al. (2000)).
{p 4 8 2}{cmd:generror} creates a new variable containing the number of Guttman errors produced by each individual.
{p 4 8 2}{cmd:replace} allows replacing the variable defined by the {cmd:generror} option.
{p 4 8 2}{cmd:graph} displays graphs (only with the {cmd:ppp}, {cmd:pmm} and {cmd:generror} options).
{p 4 8 2}{cmd:monotonicity} displays indexes in order to check the monotonicity of the data (Monotone Homogeneity Mokken Model). This option produces outputs similar to the MSP software.
The string contains several suboptions: {cmd:minvi}, {cmd:minsize}, {cmd:siglevel} and {cmd:details}. If you want use all the default values, type *.{p_end}
{p 10 12 10}{cmd:minvi} defines the minimal size of a violation of monotonicity (0.03 by default){p_end}
{p 10 12 10}{cmd:minsize} defines the minimum size of groups of patients to check the monotonicity (by default, the number of individuals divided by 10 with more than 500 individuals, the same number divided by 5 with more than 250 individuals, and the same number divided by 3 for a smaller number, with a minimum of 50){p_end}
{p 10 12 10}{cmd:siglevel} defines the significance level for the tests (0.05 by default){p_end}
{p 10 12 10}{cmd:details} displays more details with polytomous items
{p 4 8 2}{cmd:nipmatrix} display indexes in order to check the non-intersection (Doubly Monotone Mokken Model). This option produces outputs similar to the MSP software.
The string contains several suboptions: {cmd:minvi} and {cmd:siglevel}. If you want use all the default values, type *.{p_end}
{p 10 12 10}{cmd:minvi} defines the minimal size of a violation of non-intersection (0.03 by default){p_end}
{p 10 12 10}{cmd:siglevel} defines the significance level for the tests (0.05 by default){p_end}
{title:Remarks}
{p 4 8 2}For detailed informations on the Loevinger's H coefficients, see Loevinger (1948) or Hemker and al. (1995). For details about the analysis of non parametric Mokken models, see for example the MSP 5.0 manual.
{title:Example}
{p 8 8}{inp:. loevH itemA1-itemA7}
{p 8 8}{inp:. loevH itemA*, pair monotonicity(*) ppp pmm nipmatrix(minvi(0.05) siglevel(0.01))}
{p 8 8}{inp:. loevH item*, pairwise generror(error) graph}
{title:Results}
{p 4 8 2}The Loevinger's H coefficients between all the pairs of items, for each item with respect of all the others items and for the set of items are respectively saved in the matrices {it:r(loevHjk)}, {it:r(loevHj)}
and in the scalar {it:r(loevH)}.
{p 4 8 2}The empirical Guttman errors between all the pairs of items, associated to each item and relied to the scale are respectively saved in the matrices {it:r(eGuttjk)}, {it:r(eGuttj)} and in the scalar {it:e(Gutt)}.
{p 4 8 2}The theorical Guttman errors between all the pairs of items, associated to each item and relied to the scale are respectively saved in the matrices {it:r(eGuttjk0)}, {it:r(eGuttj0)} and in the scalar {it:e(Gutt0)}.
{p 4 8 2}The values of the Z statistics and the corresponding p-values associated to the Loevinger H coefficients are respectively saved in the matrices {it:r(zHjk)}, {it:r(pvalHjk)}, {it:r(zHj)}, {it:r(pvalHj)}
and in the scalars {it:e(zH)} and {it:r(pvalH)}.
{p 4 8 2}The P++ and P-- matrices are saved in {it:r(ppp)} and {it:r(pmm)}.
{p 4 8 2}The used number of individuals per items pair is saved in {it:r(Obs)}.
{title:References}
{p 4 8 2}Hemker B. T., Sijtsma K. and Molenaar I. W., Selection of unidimensional scales from a multidimensional item bank in the polytomous Mokken IRT
model, {it: Applied Psychological Measurement}, vol.19(4), 1995, pp. 337-352.
{p 4 8 2}Loevinger J., The technique of homogeneous tests compared with some aspects of "scale analysis" and factor analysis. {it:Psychological bulletin},
vol. 45, 1948, pp. 507-530.
{p 4 8 2}Molenaar I. W., Sijtsma K. and Boer P. {it:MSP5 for Windows - User's Manual}, 2000, 105 pages.
{title:Author}
{p 4 8 2}Jean-Benoit Hardouin, PhD, assistant professor{p_end}
{p 4 8 2}EA 4275 "Team of Biostatistics, Clinical Research and Subjective Measures in Health Sciences"{p_end}
{p 4 8 2}University of Nantes - Faculty of Pharmaceutical Sciences{p_end}
{p 4 8 2}1, rue Gaston Veil - BP 53508{p_end}
{p 4 8 2}44035 Nantes Cedex 1 - FRANCE{p_end}
{p 4 8 2}Email:
{browse "mailto:jean-benoit.hardouin@univ-nantes.fr":jean-benoit.hardouin@univ-nantes.fr}{p_end}
{p 4 8 2}Websites {browse "http://www.anaqol.org":AnaQol}
and {browse "http://www.freeirt.org":FreeIRT}
{title:Also see}
{p 4 13 2}Online: help for {help traces}, {help msp}, {help gengroup}, {help mokken} if installed.{p_end}

View File

@ -0,0 +1,71 @@
{smcl}
{* 31Aug2002}{...}
{hline}
help for {hi:loevH}
{hline}
{title:Loevinger's H coefficients}
{p 8 14}{cmd:loevH} {it:varlist} [{cmd:,} {cmdab:h} {cmdab:hj} {cmdab:hjk}
{cmdab:e} {cmdab:ej} {cmdab:ejk} {cmdab:e0} {cmdab:ej0} {cmdab:ejk0}]
{p}{it:varlist} is a list of two existing dichotomous variables or more.
{title:Options}
{p 0 4}{cmd:h} display the Loevinger H coefficient for all the items of the scale.
{p 0 4}{cmd:hj} display the Loevinger H coefficient for each item of the scale with respect of all the others items.
{p 0 4}{cmd:hjk} display the Loevinger H coefficient for each pair of items of the scale.
{p 0 4}{cmd:e} display the sum of the number of Guttman errors between all the pairs of items.
{p 0 4}{cmd:ej} display the sum of the number of Guttman errors for each item of the scale.
{p 0 4}{cmd:ejk} display the sum of the number of Guttman errors fror each pair of items of the scale.
{p 0 4}{cmd:e0} display the sum of the number of expected Guttman errors between all the pairs of items.
{p 0 4}{cmd:ej0} display the sum of the number of expected Guttman errors for each item of the scale.
{p 0 4}{cmd:ejk0} display the sum of the number of expected Guttman errors fror each pair of items of the scale.
{title:Description}
{p}{cmd:loevH} calculate the Loevinger's H coefficient between all the pairs of items of {it:varlist}, and compute the Loevinger's Hj coefficient for each item of {it:varlist} with respect of all the others items and the Loevinger's H coefficient for the set of items of {it:varlist}.
{title:Remarks}
For detailed information on the Loevinger's H coefficients, see Loevinger (1948) or Hemker and al. (1995).
{cmd:loevH} display none result by default. {cmd:loevH} don't permit the use of polytomous items.
{title:Example}
{inp:. loevH item1 item2 item3 item4}
{title:Results}
The Loevinger's H coefficients between all the pais of items are saved in the matrix r(loevHjk).
The Loevinger's H coefficients for each item with respect of all the others items are saved in the matrix r(loevHj).
The Loevinger's H coefficient for the set of items is saved in the scalar r(loevH).
{title:References}
Hemker B. T., Sijtsma K. and Molenaar I. W., Selection of unidimensional scales from a multidimensional item bank in the polytomous Mokken IRT
model, {it: Applied Psychological Measurement}, vol.19(4), 1995, pp. 337-352.
Loevinger J., The technique of homogeneous tests compared with some aspects of "scale analysis" and factor analysis. {it:Psychological bulletin},
vol. 45, 1948, pp. 507-530.
{title:Author}
{p 4 8 2}Jean-Benoit Hardouin, Regional Health Observatory (ORS) - 1, rue Porte Madeleine - BP 2439 - 45032 Orleans Cedex 1 - France.
You can contact the author at {browse "mailto:jean-benoit.hardouin@neuf.fr":jean-benoit.hardouin@neuf.fr} and visit the websites {browse "http://anaqol.free.fr":AnaQol} and {browse "http://freeirt.free.fr":FreeIRT}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,103 @@
{smcl}
{* 8december2010}{...}
{hline}
help for {hi:loevh}{right:Jean-Benoit Hardouin}
{hline}
{title:Loevinger's H coefficients and non parametric Item Responses Models}
{p 8 14 2}{cmd:loevh} {it:varlist} [{cmd:,} {cmdab:pairw:ise} {cmdab:pair} {cmdab:ppp} {cmdab:pmm} {cmdab:noadj:ust} {cmdab:gener:ror}({it:newvar}) {cmdab:rep:lace} {cmdab:gr:aph} {cmdab:mono:tonicity}({it:string}) {cmdab:nip:matrix}({it:string})]
{p 8 14 2}{it:varlist} is a list of two or more existing dichotomous ou polytomous variables.
{title:Description}
{p 4 8 2}{cmd:loevh} allows verifying the fit of data to the Monotonely Homogeneous Mokken Model or to the Doubly Monotone Mokken Model.
It computes the Loevinger H scalability coefficients, and several indexes in the field of the Non parametric Item Response Theory.
{title:Options}
{p 4 8 2}{cmd:pairwise}. By default, all the individuals with one or more missing values are omitted. {cmd:pairwise} allows to use the complete information by pair of items.
{p 4 8 2}{cmd:pair} displays statistics and the value of the Loevinger H coefficient for each pair of items.
{p 4 8 2}{cmd:ppp} displays the P++ matrix.
{p 4 8 2}{cmd:pmm} displays the P-- matrix.
{p 4 8 2}{cmd:noadjust} approximates the tests statistics like the MSP software (Molenaar et al. (2000)).
{p 4 8 2}{cmd:generror} creates a new variable containing the number of Guttman errors produced by each individual.
{p 4 8 2}{cmd:replace} allows replacing the variable defined by the {cmd:generror} option.
{p 4 8 2}{cmd:graph} displays graphs (only with the {cmd:ppp}, {cmd:pmm} and {cmd:generror} options).
{p 4 8 2}{cmd:monotonicity} displays indexes in order to check the monotonicity of the data (Monotone Homogeneity Mokken Model). This option produces outputs similar to the MSP software.
The string contains several suboptions: {cmd:minvi}, {cmd:minsize}, {cmd:siglevel} and {cmd:details}. If you want use all the default values, type *.{p_end}
{p 10 12 10}{cmd:minvi} defines the minimal size of a violation of monotonicity (0.03 by default){p_end}
{p 10 12 10}{cmd:minsize} defines the minimum size of groups of patients to check the monotonicity (by default, the number of individuals divided by 10 with more than 500 individuals, the same number divided by 5 with more than 250 individuals, and the same number divided by 3 for a smaller number, with a minimum of 50){p_end}
{p 10 12 10}{cmd:siglevel} defines the significance level for the tests (0.05 by default){p_end}
{p 10 12 10}{cmd:details} displays more details with polytomous items
{p 4 8 2}{cmd:nipmatrix} display indexes in order to check the non-intersection (Doubly Monotone Mokken Model). This option produces outputs similar to the MSP software.
The string contains several suboptions: {cmd:minvi} and {cmd:siglevel}. If you want use all the default values, type *.{p_end}
{p 10 12 10}{cmd:minvi} defines the minimal size of a violation of non-intersection (0.03 by default){p_end}
{p 10 12 10}{cmd:siglevel} defines the significance level for the tests (0.05 by default){p_end}
{title:Remarks}
{p 4 8 2}For detailed informations on the Loevinger's H coefficients, see Loevinger (1948) or Hemker and al. (1995). For details about the analysis of non parametric Mokken models, see for example the MSP 5.0 manual.
{title:Example}
{p 8 8}{inp:. loevh itemA1-itemA7}
{p 8 8}{inp:. loevh itemA*, pair monotonicity(*) ppp pmm nipmatrix(minvi(0.05) siglevel(0.01))}
{p 8 8}{inp:. loevh item*, pairwise generror(error) graph}
{title:Results}
{p 4 8 2}The Loevinger's H coefficients between all the pairs of items, for each item with respect of all the others items and for the set of items are respectively saved in the matrices {it:r(loevHjk)}, {it:r(loevHj)}
and in the scalar {it:r(loevh)}.
{p 4 8 2}The empirical Guttman errors between all the pairs of items, associated to each item and relied to the scale are respectively saved in the matrices {it:r(eGuttjk)}, {it:r(eGuttj)} and in the scalar {it:e(Gutt)}.
{p 4 8 2}The theorical Guttman errors between all the pairs of items, associated to each item and relied to the scale are respectively saved in the matrices {it:r(eGuttjk0)}, {it:r(eGuttj0)} and in the scalar {it:e(Gutt0)}.
{p 4 8 2}The values of the Z statistics and the corresponding p-values associated to the Loevinger H coefficients are respectively saved in the matrices {it:r(zHjk)}, {it:r(pvalHjk)}, {it:r(zHj)}, {it:r(pvalHj)}
and in the scalars {it:e(zH)} and {it:r(pvalH)}.
{p 4 8 2}The P++ and P-- matrices are saved in {it:r(ppp)} and {it:r(pmm)}.
{p 4 8 2}The used number of individuals per items pair is saved in {it:r(Obs)}.
{title:References}
{p 4 8 2}Hemker B. T., Sijtsma K. and Molenaar I. W., Selection of unidimensional scales from a multidimensional item bank in the polytomous Mokken IRT
model, {it: Applied Psychological Measurement}, vol.19(4), 1995, pp. 337-352.
{p 4 8 2}Loevinger J., The technique of homogeneous tests compared with some aspects of "scale analysis" and factor analysis. {it:Psychological bulletin},
vol. 45, 1948, pp. 507-530.
{p 4 8 2}Molenaar I. W., Sijtsma K. and Boer P. {it:MSP5 for Windows - User's Manual}, 2000, 105 pages.
{title:Author}
{p 4 8 2}Jean-Benoit Hardouin, PhD, assistant professor{p_end}
{p 4 8 2}EA 4275 "Team of Biostatistics, Clinical Research and Subjective Measures in Health Sciences"{p_end}
{p 4 8 2}University of Nantes - Faculty of Pharmaceutical Sciences{p_end}
{p 4 8 2}1, rue Gaston Veil - BP 53508{p_end}
{p 4 8 2}44035 Nantes Cedex 1 - FRANCE{p_end}
{p 4 8 2}Email:
{browse "mailto:jean-benoit.hardouin@univ-nantes.fr":jean-benoit.hardouin@univ-nantes.fr}{p_end}
{p 4 8 2}Websites {browse "http://www.anaqol.org":AnaQol}
and {browse "http://www.freeirt.org":FreeIRT}
{title:Also see}
{p 4 13 2}Online: help for {help traces}, {help msp}, {help gengroup}, {help mokken} if installed.{p_end}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,368 @@
*! lstrfun Version 1.2 dan_blanchette@unc.edu 09Aug2011
*! the carolina population center, unc-ch
* -Nick Cox let me know that the regular expersion functions were available in Stata 9.2
* but were just not documented
* lstrfun Version 1.1 dan_blanchette@unc.edu 22Jul2011
** -it now can run regexr(), regexm() and regexs()
** lstrfun Version 1.0 dan_blanchette@unc.edu 09Aug2010
** Center for Entrepreneurship and Innovation Duke University's Fuqua School of Business
* modify long local macros with mata string functions
program define lstrfun
version 9.2
syntax [namelist(local)] [, lower(string asis) upper(string asis) proper(string asis) ///
ltrim(string asis) itrim(string asis) rtrim(string asis) trim(string asis) ///
substr(string asis) subinstr(string asis) subinword(string asis) ///
reverse(string asis) strdup(string asis) soundex(string asis) soundex_nara(string asis) ///
strlen(string asis) strpos(string asis) _substr(string asis) indexnot(string asis) ///
strmatch(string asis) regexr(string asis) regexm(string asis) regexms(string asis) ///
]
if missing(`"`namelist'"') {
display as error "need to specify a local macro variable name to modify or create"
exit 198
}
local n_locals : word count `namelist'
if `n_locals' > 1 {
display as error "only one local macro variable name can be submitted"
exit 198
}
// local m1= !missing(`"`macval(lower)'"'
// says "too few quotes" when a fairly long macro submitted but only inside a program
// using short macro names and no spaces to make it even shoerter
local m1=`"`macval(lower)'"'!=""
local m2=`"`macval(proper)'"'!=""
local m3=`"`macval(upper)'"'!=""
local m4=`"`macval(ltrim)'"'!=""
local m5=`"`macval(itrim)'"'!=""
local m6=`"`macval(rtrim)'"'!=""
local m7=`"`macval(trim)'"'!=""
local m8=`"`macval(substr)'"'!=""
local m9=`"`macval(subinstr)'"'!=""
local m10=`"`macval(subinword)'"'!=""
local m11=`"`macval(strdup)'"'!=""
local m12=`"`macval(reverse)'"'!=""
local m13=`"`macval(soundex)'"'!=""
local m14=`"`macval(soundex_nara)'"'!=""
local m15=`"`macval(strlen)'"'!=""
local m16=`"`macval(strpos)'"'!=""
local m17=`"`macval(_substr)'"'!=""
local m18=`"`macval(indexnot)'"'!=""
local m19=`"`macval(strmatch)'"'!=""
local m20=`"`macval(regexr)'"'!=""
local m21=`"`macval(regexm)'"'!=""
local m22=`"`macval(regexms)'"'!=""
if `m1' ///
+ `m2' ///
+ `m3' ///
+ `m4' ///
+ `m5' ///
+ `m6' ///
+ `m7' ///
+ `m8' ///
+ `m9' ///
+ `m10' ///
+ `m11' ///
+ `m12' ///
+ `m13' ///
+ `m14' ///
+ `m15' ///
+ `m16' ///
+ `m17' ///
+ `m18' ///
+ `m19' ///
+ `m20' ///
+ `m21' > 1 {
display as error "you can only specify 1 option in {helpb lstrfun:lstrfun}"
exit 198
}
if `m1' == 1 {
mata: long_lower(`macval(lower)')
c_local `namelist' `"`macval(lower)'"'
}
else if `m2' == 1 {
mata: long_proper(`macval(proper)')
c_local `namelist' `"`macval(proper)'"'
}
else if `m3' == 1 {
mata: long_upper(`macval(upper)')
c_local `namelist' `"`macval(upper)'"'
}
else if `m4' == 1 {
mata: long_ltrim(`macval(ltrim)')
c_local `namelist' `"`macval(ltrim)'"'
}
else if `m5' == 1 {
mata: long_itrim(`macval(itrim)')
c_local `namelist' `"`macval(itrim)'"'
}
else if `m6' == 1 {
mata: long_rtrim(`macval(rtrim)')
c_local `namelist' `"`macval(rtrim)'"'
}
else if `m7' == 1 {
mata: long_trim(`macval(trim)')
c_local `namelist' `"`macval(trim)'"'
}
else if `m8' == 1 {
mata: long_substr(`macval(substr)')
c_local `namelist' `"`macval(substr)'"'
}
else if `m9' == 1 {
mata: long_subinstr(`macval(subinstr)')
c_local `namelist' `"`macval(subinstr)'"'
}
else if `m10' == 1 {
mata: long_subinword(`macval(subinword)')
c_local `namelist' `"`macval(subinword)'"'
}
else if `m11' == 1 {
mata: long_strdup(`macval(strdup)')
local len_strdup : length local strdup
if `len_strdup' < `len_m_var' {
local clen_m_var= string(`len_m_var',"%11.0gc")
if c(SE) & c(maxvar) < 32767 & `len_m_var' <= 1081511 {
display as error "{cmd:strdup()} generated a string that has `clen_m_var' characters which is more than Stata can handle" ///
" when {helpb maxvar:maxvar} is set to `c(maxvar)'."
display as error "Increase your {helpb maxvar:maxvar} setting higher and try again."
exit 149
}
else {
display as error "{cmd:strdup()} generated a string that has `clen_m_var' characters (which is more than Stata can handle)"
exit 149
}
}
c_local `namelist' `"`macval(strdup)'"'
}
else if `m12' == 1 {
mata: long_reverse(`macval(reverse)')
c_local `namelist' `"`macval(reverse)'"'
}
else if `m13' == 1 {
mata: long_soundex(`macval(soundex)')
c_local `namelist' `"`macval(soundex)'"'
}
else if `m14' == 1 {
mata: long_soundex_nara(`macval(soundex_nara)')
c_local `namelist' `"`macval(soundex_nara)'"'
}
else if `m15' == 1 {
mata: long_strlen(`macval(strlen)')
c_local `namelist' `"`macval(strlen)'"'
}
else if `m16' == 1 {
mata: long_strpos(`macval(strpos)')
c_local `namelist' `"`macval(strpos)'"'
}
else if `m17' == 1 {
mata: long__substr(`macval(_substr)')
c_local `namelist' `"`macval(_substr)'"'
}
else if `m18' == 1 {
mata: long_indexnot(`macval(indexnot)')
c_local `namelist' `"`macval(indexnot)'"'
}
else if `m19' == 1 {
mata: long_strmatch(`macval(strmatch)')
c_local `namelist' `"`macval(strmatch)'"'
}
else if `m20' == 1 {
mata: long_regexr(`macval(regexr)')
c_local `namelist' `"`macval(regexr)'"'
}
else if `m21' == 1 {
mata: long_regexm(`macval(regexm)')
c_local `namelist' `"`macval(regexm)'"'
}
else if `m22' == 1 {
mata: long_regexms(`macval(regexms)')
c_local `namelist' `"`macval(regexms)'"'
}
else {
display as error "need to specify an option in {helpb lstrfun:lstrfun}"
exit 198
}
end
mata:
void long_lower(string scalar lstring)
{
string scalar m_var
m_var= strlower(lstring)
st_local("lower",m_var)
}
void long_proper(string scalar lstring)
{
string scalar m_var
m_var= strproper(lstring)
st_local("proper",m_var)
}
void long_upper(string scalar lstring)
{
string scalar m_var
m_var= strupper(lstring)
st_local("upper",m_var)
}
void long_ltrim(string scalar lstring)
{
string scalar m_var
m_var= strltrim(lstring)
st_local("ltrim",m_var)
}
void long_itrim(string scalar lstring)
{
string scalar m_var
m_var= stritrim(lstring)
st_local("itrim",m_var)
}
void long_rtrim(string scalar lstring)
{
string scalar m_var
m_var= strrtrim(lstring)
st_local("rtrim",m_var)
}
void long_trim(string scalar lstring)
{
string scalar m_var
m_var= strtrim(lstring)
st_local("trim",m_var)
}
void long_substr(string scalar lstring, real scalar start, real scalar length)
{
string scalar m_var
m_var= substr(lstring,start,length)
st_local("substr",m_var)
}
void long_subinstr(string scalar lstring, string scalar old, string scalar snew, real scalar cnt)
{
string scalar m_var
m_var= subinstr(lstring,old,snew,cnt)
st_local("subinstr",m_var)
}
void long_subinword(string scalar lstring, string scalar old, string scalar snew, real scalar cnt)
{
string scalar m_var
m_var= subinword(lstring,old,snew,cnt)
st_local("subinword",m_var)
}
void long_strdup(string scalar lstring, real scalar n)
{
string scalar m_var
m_var= n*lstring
real scalar len_lstring
len_lstring= n * strlen(lstring)
real scalar len_m_var
len_m_var= strlen(m_var)
string scalar slen_m_var
slen_m_var= strofreal(len_m_var)
st_local("len_m_var",slen_m_var)
st_local("strdup",m_var)
}
void long_reverse(string scalar lstring)
{
string scalar m_var
m_var= strreverse(lstring)
st_local("reverse",m_var)
}
void long_soundex(string scalar lstring)
{
string scalar m_var
m_var= soundex(lstring)
st_local("soundex",m_var)
}
void long_soundex_nara(string scalar lstring)
{
string scalar m_var
m_var= soundex_nara(lstring)
st_local("soundex_nara",m_var)
}
void long_strlen(string scalar lstring)
{
string scalar m_var
real scalar nm_var
nm_var= strlen(lstring)
m_var= strofreal(nm_var)
st_local("strlen",m_var)
}
void long_strpos(string scalar lstring, string scalar needle)
{
string scalar m_var
real scalar nm_var
nm_var= strpos(lstring,needle)
m_var= strofreal(nm_var)
st_local("strpos",m_var)
}
void long__substr(string scalar lstring, string scalar tosub, real scalar pos)
{
_substr(lstring, tosub, pos)
st_local("_substr",lstring)
}
void long_indexnot(string scalar lstring, string scalar needle)
{
string scalar m_var
real scalar nm_var
nm_var= indexnot(lstring,needle)
m_var= strofreal(nm_var)
st_local("indexnot",m_var)
}
void long_strmatch(string scalar lstring, string scalar pattern)
{
string scalar m_var
real scalar nm_var
nm_var= strmatch(lstring,pattern)
m_var= strofreal(nm_var)
st_local("strmatch",m_var)
}
void long_regexr(string scalar lstring, string scalar pattern, string scalar rep)
{
string scalar m_var
m_var= regexr(lstring,pattern,rep)
st_local("regexr",m_var)
}
void long_regexm(string scalar lstring, string scalar pattern)
{
string scalar m_var
real scalar nm_var
nm_var= regexm(lstring,pattern)
m_var= strofreal(nm_var)
st_local("regexm",m_var)
}
void long_regexms(string scalar lstring, string scalar pattern, real scalar ss)
{
string scalar m_var
if (regexm(lstring,pattern)) {
m_var= regexs(ss)
}
st_local("regexms",m_var)
}
end