Stata中实现SQL Between运算符等效功能的方法咨询
Stata中实现类似SQL BETWEEN的范围判断方法
你需要生成标识变量six_figures,将薪资在100000至500000之间(含两端)的行标记为1,其余为0,不用逐个赋值,Stata里有两种高效的等效实现方式:
方法一:逻辑运算符组合
直接用大于等于和小于等于的逻辑判断,和SQL的BETWEEN逻辑完全一致(包含边界值):gen six_figures = 0 replace six_figures = 1 if Salary >= 100000 & Salary <= 500000方法二:使用内置
inrange()函数
Stata提供了专门的范围判断函数inrange(),会直接返回1(满足条件)或0(不满足条件),代码更简洁:gen six_figures = inrange(Salary, 100000, 500000)
这两种方法都能快速完成需求,避免了逐个赋值的繁琐操作,运行效率也高得多。
内容的提问来源于stack exchange,提问作者Prajwal Mani Pradhan
相关产品推荐
相关产品推荐

