當且僅當以前的一段代碼實際進行了更改時,Stata中是否有執行一段代碼的方法?所做更改的指標
例如,如果其中一個符合regexm()
測試,我將連接兩個變量。我知道如果我將這個限定符作爲if
命令運行,它只會看第一個觀察結果。有沒有一種方法來運行if
命令,說
if regexm(var`n', ".*\)$") {
// code
}
,並在if
語句返回true,如果條件爲真爲任何觀察,而不只是第一個?
當且僅當以前的一段代碼實際進行了更改時,Stata中是否有執行一段代碼的方法?所做更改的指標
例如,如果其中一個符合regexm()
測試,我將連接兩個變量。我知道如果我將這個限定符作爲if
命令運行,它只會看第一個觀察結果。有沒有一種方法來運行if
命令,說
if regexm(var`n', ".*\)$") {
// code
}
,並在if
語句返回true,如果條件爲真爲任何觀察,而不只是第一個?
對於任何觀測匹配觸發代碼,你需要先算匹配:
count if regexm(var`n', ".*\)$")
if r(N) > 0 {
// code
}
if r(N)
就足夠了這裏,爲非零參數均視爲真實r(N)
從count
不能爲負。
啊,美麗,這正是我所期待的。謝謝!!! – Christian
我想你正在尋找一個字符串末尾的括號。另一個條件是'substr(whatever,-1,1)==「)」'。 –
將STATA編輯爲Stata。我在你之前的主題中做了這個編輯,並相信你會注意到。拼寫STATA尚未被公司使用超過30年。我不知道模擬STATA來自哪裏,除非它是與SAS和SPSS的虛擬類比。 Stata從來不是縮寫,始終是一個發明的名字。 –