1. 前言
在目前工作中,用stata清洗及分析數據,感覺很順滑。無奈不少同學因為help文件里的英文望而卻步。
帶著學習和分享的目的,根據工作經驗,給大家整理一些常用以及不太常用但很有用的命令,并對該命令的help文件進行有側重的詳解。
2. 描述
subinst(s1,s2,s3,n):字符串函數。將字符串s1中的字符串s2出現的前n個,替換成字符串s3。
subinword(s1,s2,s3,n):字符串函數。將字符串s1中的單詞s2出現的前n個,替換成字符串s3。
3. 參數
s1:要替換的字符串所有內容。
s2:要進行替換的字符串。
s3:要替換成的字符串。
n:整數(≥0),或者缺失(.);缺失表示替換所有s2
4. 舉例
*將this is the day中的第一個is替換成X
subinstr("this is the day","is","X",1) = "thX is the day"
*將this is the hour中的前2個is替換成X
subinstr("this is the hour","is","X",2) = "thX X the hour"
*將this is this中的所有is替換成X
subinstr("this is this","is","X",.) = "thX X thX"
*將this is the day中的第一個is單詞替換成X
subinword("this is the day","is","X",1) = "this X the day"
*將this is the hour中的所有is單詞替換成X
subinword("this is the hour","is","X",.) = "this X the hour"
*將this is this中的所有th單詞替換成X,沒有th單詞不進行替換
subinword("this is this","th","X",.) = "this is this"
5.補充
* 替換某個字符串變量var中的所有空格,并生成新的變量newvar
gen newvar=subinstr(var," ","",.)