⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 svyset.ado

📁 是一个经济学管理应用软件 很难找的 但是经济学学生又必须用到
💻 ADO
📖 第 1 页 / 共 2 页
字号:
					exit 198
				}
				local su
			}
			else	return add
		}
		else {
			di as err ///
"invalid survey characteristics;" _n ///
"sampling unit variable is not set for stage `i' of `stages' stages"
			exit 459
		}
		if "`wt'" != "" {
			local sets "`sets' `wt'"
			local wt
		}
		_svyset get strata `i'
		local strata `r(strata`i')'
		if `"`strata'"' != "" {
			return add
			local sets `"`sets'`comma' strata(`strata')"'
			local comma
		}
		_svyset get fpc `i'
		local fpc `r(fpc`i')'
		if `"`fpc'"' != "" {
			return add
			local sets `"`sets'`comma' fpc(`fpc')"'
			local comma
		}
		else if `i' != `stages' {
			di as err ///
"invalid survey characteristics;" _n ///
"FPC variable is not set for stage `i' of `stages' stages"
			exit 459
		}
		local oror " || "
	}

	if `is_set' == 0 {
		return clear
		local sets ", clear"
	}
	else if `"`gsets'"' != "" {
		local sets `"`sets'`comma' `:list retok gsets'"'
	}
	return local settings `"`sets'"'
	if `stages' {
		return scalar stages = `stages'
	}
end

program GetEclass, rclass
	// get the global options
	if `"`e(wexp)'"' != "" {
		local wt `"[`e(wtype)'`e(wexp)']"'
		return local wtype `"`e(wtype)'"'
		return local wexp  `"`e(wexp)'"'
		local is_set 1
	}
	if "`e(brrweight)'" != "" {
		local gsets `"`gsets' brrweight(`e(brrweight)')"'
		return local brrweight `e(brrweight)'
		local is_set 1
	}
	if "`e(jkrweight)'" != "" {
		local gsets `"`gsets' jkrweight(`e(jkrweight)')"'
		return local jkrweight `e(jkrweight)'
		local is_set 1
	}
	if `"`e(poststrata)'`e(postweight)'"' != "" {
		local gsets `"`gsets' poststrata(`e(poststrata)')"'
		local gsets `"`gsets' postweight(`e(postweight)')"'
		return local poststrata `e(poststrata)'
		return local postweight `e(postweight)'
		local is_set 1
	}
	if `"`e(vce)'"' != "" {
		local gsets `"`gsets' vce(`e(vce)')"'
		if "`e(mse)'" != "" {
			local gsets `"`gsets' mse"'
			return local mse mse
		}
		return local vce `"`e(vce)'"'
		local is_set 1
	}

	// get the stage specific settings
	local stages = e(stages)
	capture confirm integer number `stages'
	if c(rc) {
		local stages 0
	}
	else	local is_set 1
	local comma ","
	forval i = 1/`stages' {
		local comma ","
		local su `e(su`i')'
		if `"`su'"' != "" {
			return local su`i' `su'
		}
		else	local su _n
		local sets "`sets'`oror'`su'"
		if "`wt'" != "" {
			local sets "`sets' `wt'"
			local wt
		}
		local strata `e(strata`i')'
		if `"`strata'"' != "" {
			return local strata`i' `strata'
			local sets `"`sets'`comma' strata(`strata')"'
			local comma
		}
		local fpc `e(fpc`i')'
		if `"`fpc'"' != "" {
			return local fpc`i' `fpc'
			local sets `"`sets'`comma' fpc(`fpc')"'
			local comma
		}
		local oror " || "
	}

	if `"`gsets'"' != "" {
		local sets `"`sets'`comma' `:list retok gsets'"'
	}
	return local settings `"`sets'"'
	if `stages' {
		return scalar stages = `stages'
	}
end

program GetOld, rclass
	quietly svyset_8
	if "`r(_svy)'" != "set" {
		local sets ", clear"
	}
	else {
		local comma ","
		if "`r(psu)'" != "" {
			return local su1 `"`r(psu)'"'
			local sets `"`r(psu)'"'
		}
		else {
			local sets _n
		}
		if "`r(wtype)'" != "" {
			return local wtype `"`r(wtype)'"'
			return local wexp  `"`r(wexp)'"'
			local sets `"`sets' [`r(wtype)'`r(wexp)']"'
		}
		if "`r(strata)'" != "" {
			return local strata1 `"`r(strata)'"'
			local sets ///
			`"`sets'`comma' strata(`r(strata)')"'
			local comma
		}
		if "`r(fpc)'" != "" {
			return local fpc1 `"`r(fpc)'"'
			local sets ///
			`"`sets'`comma' fpc(`r(fpc)')"'
		}
		return scalar stages = 1
		return local vce "linearized"
		local vce "`comma' vce(linearized)"
	}
	return local settings `"`:list retok sets'`vce'"'
end

program Display
	syntax [, eclass ]
	Get, `eclass'
	if `"`r(settings)'"' == ", clear" {
		di as txt "no survey characteristics are set"
		exit
	}
	di
	// display global settings
	local c2 16
	local sfmt %13s
	if `"`r(wtype)'"' != "" {
		local wvar `"`r(wexp)'"'
		gettoken equal wvar : wvar, parse(" =")
		local wvar : list retok wvar
		di as txt `sfmt' "`r(wtype)'" ":" _col(`c2') as res "`wvar'"
	}
	else {
		di as txt `sfmt' "pweight" ":" _col(`c2') "<none>"
	}
	if `"`r(vce)'"' != "" {
		di as txt `sfmt' "VCE" ":" _col(`c2') as res "`r(vce)'"
		if !inlist("`r(vce)'", "", "linearized") {
			if "`r(mse)'" == "" {
				local mseas as txt
				local onoff off
			}
			else {
				local mseas as res
				local onoff on
			}
			di as txt `sfmt' "MSE" ":" _col(`c2') `mseas' "`onoff'"
		}
	}
	else {
		di as txt `sfmt' "VCE" ":" _col(`c2') "linearized"
	}
	local colsets 1 `c2' `c2' 2
	if `"`r(brrweight)'"' != "" {
		di "{p2colset `colsets'}{...}"
		di as txt "{p2col:{space 4}brrweight:}" ///
		   as res "`r(brrweight)'{p_end}"
		di "{p2colreset}{...}"
	}
	if `"`r(jkrweight)'"' != "" {
		di "{p2colset `colsets'}{...}"
		di as txt "{p2col:{space 4}jkrweight:}" ///
		   as res "`r(jkrweight)'{p_end}"
		di "{p2colreset}{...}"
	}
	if `"`r(poststrata)'"' != "" {
		di as txt `sfmt' "Poststrata" ":" ///
			_col(`c2') as res "`r(poststrata)'"
	}
	if `"`r(postweight)'"' != "" {
		di as txt `sfmt' "Postweight" ":" ///
			_col(`c2') as res "`r(postweight)'"
	}
	if !missing(r(stages)) {
		local stages = r(stages)
	}
	else {
		local stages = 0
	}
	forval i = 1/`stages' {
		if `"`r(strata`i')'"' != "" {
			di as txt `sfmt' "Strata `i'" ":" ///
				_col(`c2') as res "`r(strata`i')'"
		}
		else { // if `i' == 1 {
			di as txt `sfmt' "Strata `i'" ":" ///
				_col(`c2') "<one>"
		}
		if !inlist(`"`r(su`i')'"', "", "_n") {
			di as txt `sfmt' "SU `i'" ":" ///
				_col(`c2') as res "`r(su`i')'"
		}
		else {
			di as txt `sfmt' "SU `i'" ":" ///
				_col(`c2') "<observations>"
		}
		if `"`r(fpc`i')'"' != "" {
			di as txt `sfmt' "FPC `i'" ":" ///
				_col(`c2') as res "`r(fpc`i')'"
		}
		else	di as txt `sfmt' "FPC `i'" ":" ///
				_col(`c2') as txt "<zero>"
	}
	di as txt "{p2colreset}{...}"
end

program ParseOld
	quietly svyset_8 `0'
	if "`r(psu)'" == "" | "`r(srs)'" != "" {
		local uni1 _n
	}
	else	local uni1 `r(psu)'
	if "`r(wtype)'" != "" {
		local wt [`r(wtype)'`r(wexp)']
	}
	if "`r(strata)'" != "" {
		local strata strata(`strata')
	}
	if "`r(fpc)'" != "" {
		local fpc fpc(`fpc')
	}
	c_local 0 `"`psu' `wt', `strata' `fpc'"'
end

program JKnifeVChars, sclass
	capture noisily				///
	syntax [varlist(default=none)] [,	///
		STRatum(numlist integer)	///
		FPC(numlist >=0)		///
		MULTiplier(numlist >0)		///
		reset				///
	]
	local nvar  : word count `varlist'
	local nstr  : word count `stratum'
	local nfpc  : word count `fpc'
	local nmult : word count `multiplier'
	local invalid `c(rc)'
	if `nvar' == 0 & ( `nstr'`nfpc'`nmult' | "`reset'" != "") {
		jkrInvalid
	}
	if `nstr' > 1 & `nstr' != `nvar' {
		di as err "invalid number of stratum identifiers"
		if `nstr' < `nvar' {
			jkrInvalid 103
		}
		else	jkrInvalid 102
	}
	if `nfpc' > 1 & `nfpc' != `nvar' {
		di as err "invalid number of FPC values"
		if `nfpc' < `nvar' {
			jkrInvalid 103
		}
		else	jkrInvalid 102
	}
	if `nmult' > 1 & `nmult' != `nvar' {
		di as err "invalid number of jackknife multiplier values"
		if `nmult' < `nvar' {
			jkrInvalid 103
		}
		else	jkrInvalid 102
	}

	local noreset = "`reset'" == ""
	if `nstr'`nfpc'`nmult' | `"`reset'"' != "" {
		local str `"`stratum'"'
		if `nstr' > 1 {
			local strlist `"`stratum'"'
			local stratum
		}
		if `nfpc' > 1 {
			local fpclist `"`fpc'"'
		}
		local mult  `"`multiplier'"'
		if `nmult' > 1 {
			local multlist `"`multiplier'"'
			local multiplier
		}
		forval i = 1/`nvar' {
			local var : word `i' of `varlist'
			if `nstr' > 1 {
				local str : word `i' of `strlist'
			}
			if `nfpc' > 1 {
				local fpc : word `i' of `fpclist'
			}
			if `nmult' > 1 {
				local mult : word `i' of `multlist'
			}
			local char : char `var'[jk_stratum]
			if `noreset' ///
			 & !inlist(`"`char'"',"","`str'") {
				di as err "{p 0 0 2}" ///
"characteristic `var'[jk_stratum] already exists " ///
"and is different from the value supplied to stratum()"
				exit 459
			}
			else	char `var'[jk_stratum] `str'
			local char : char `var'[jk_fpc]
			if `noreset' ///
			 & !inlist(`"`char'"',"","`fpc'") {
				di as err "{p 0 0 2}" ///
"characteristic `var'[jk_fpc] already exists " ///
"and is different from the value supplied to fpc()"
				exit 459
			}
			else	char `var'[jk_fpc] `fpc'
			local char : char `var'[jk_multiplier]
			if `noreset' ///
			 & !inlist(`"`char'"',"","`mult'") {
				di as err "{p 0 0 2}" ///
"characteristic `var'[jk_multiplier] already exists " ///
"and is different from the value supplied to multiplier()"
				exit 459
			}
			else	char `var'[jk_multiplier] `mult'
		}
	}
	sreturn local varlist `"`varlist'"'
end

program jkrInvalid
	args rc
	di as err "option jkrweight() incorrectly specified"
	if "`rc'" == "" {
		exit 198
	}
	else	exit `rc'
end

exit

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -