2017-02-28 66 views
0

當且僅當以前的一段代碼實際進行了更改時,Stata中是否有執行一段代碼的方法?所做更改的指標

例如,如果其中一個符合regexm()測試,我將連接兩個變量。我知道如果我將這個限定符作爲if命令運行,它只會看第一個觀察結果。有沒有一種方法來運行if命令,說

if regexm(var`n', ".*\)$") { 
    // code 
} 

,並在if語句返回true,如果條件爲真爲任何觀察,而不只是第一個?

+0

將STATA編輯爲Stata。我在你之前的主題中做了這個編輯,並相信你會注意到。拼寫STATA尚未被公司使用超過30年。我不知道模擬STATA來自哪裏,除非它是與SAS和SPSS的虛擬類比。 Stata從來不是縮寫,始終是一個發明的名字。 –

回答

0

對於任何觀測匹配觸發代碼,你需要先算匹配:

count if regexm(var`n', ".*\)$") 

if r(N) > 0 { 
    // code 
} 

if r(N)就足夠了這裏,爲非零參數均視爲真實r(N)count不能爲負。

+0

啊,美麗,這正是我所期待的。謝謝!!! – Christian

+0

我想你正在尋找一個字符串末尾的括號。另一個條件是'substr(whatever,-1,1)==「)」'。 –