📄 cluster_measures.ado
字号:
*! version 1.0.2 09jun2005
program define cluster_measures, rclass
version 7, missing
syntax varlist(numeric) [if] [in] , COMPare(numlist >=1 int) /*
*/ GENerate(string) [ PROPVars PROPCompares * ]
marksample touse
local ncomp : word count `compare'
local ngen : word count `generate'
if `ngen' != `ncomp' {
di as err "{p}need the same number of compare() arguments as"
di as err "generate() arguments{p_end}"
exit 198
}
confirm new variable `generate'
foreach x of local compare {
if `x' > _N {
di as err "{p}compare() arguments must be between 1"
di as err "and the number of observations{p_end}"
exit 125
}
}
if trim(`"`options'"') == "" {
local options L2
}
cluster parsedistance `options'
local dist `s(dist)'`s(darg)'
local dtype `s(dtype)'
local dbinary `s(binary)'
forvalues i = 1/`ngen' {
local gvar : word `i' of `generate'
local cnum : word `i' of `compare'
/* check if comparison obs #cnum has any missings. If so
then generate missings as answer */
foreach var of local varlist {
if missing(`var'[`cnum']) {
gen byte `gvar' = .
local vardone 1
continue, break
}
}
if "`vardone'" == "" {
_cluster `varlist' if `touse', computemeasures /*
*/ generate(`gvar') compare(`cnum') /*
*/ `propvars' `propcompares' `dist'
qui compress `gvar'
}
}
ret local distance `dist'
ret local dtype `dtype'
ret local binary `binary'
ret local compare `compare'
ret local generate `generate'
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -