If statement sas数据步骤中if else语句的通配符
我想根据某个字符串从调查数据中编码一个新变量,但要使用sas数据步骤在该字符串前后包含一个通配符以获取附加信息。下面的代码与字符串开头的模式匹配If statement sas数据步骤中if else语句的通配符,if-statement,sas,wildcard,If Statement,Sas,Wildcard,我想根据某个字符串从调查数据中编码一个新变量,但要使用sas数据步骤在该字符串前后包含一个通配符以获取附加信息。下面的代码与字符串开头的模式匹配 data survey_data; set final_data; if 'var1' =: 'this string' then var2 = 'Yes'; else var2 = 'No'; run; 但是,如果字符串出现在字符串的中间,我不知道如何匹配它,“:=:”不起作用。 < P>使用索引< /
data survey_data;
set final_data;
if 'var1' =: 'this string' then var2 = 'Yes';
else var2 = 'No';
run;
但是,如果字符串出现在字符串的中间,我不知道如何匹配它,“:=:”不起作用。
< P>使用<代码>索引< /代码>函数: data survey_data ; set final_data ; if index(var1,'this string') then var2 = 'Yes' ; else var2 = 'No' ; run ; 是以下的简写:if index(var1,'this string') > 0 then
SAS索引函数>任何非零数字均视为真。不仅仅是积极的。但是INDEX()函数不会返回负数。
if index(var1,'this string') > 0 then