如何使用sas中的indexw函数
您可以使用 SAS 中的INDEXW函数返回出现在字符串中的单词的第一个字符的位置。
该函数使用以下基本语法:
INDEXW(来源,摘录)
金子:
- 来源:分析渠道
- extract :在源中查找的单词
下面的例子展示了如何在实际中使用这个功能。
示例:使用 SAS 中的 INDEXW 函数
假设 SAS 中有以下数据集,其中包含一列表达式:
/*create dataset*/
data original_data;
input sentence $40. ;
datalines ;
A pig is my favorite animal
My name is piglet
Pigs are so cute
Here is a baby pig
His name is piggie
;
run ;
/*view dataset*/
proc print data = original_data;
我们可以使用INDEXW函数来查找单词“pig”在短语列中第一次出现的位置:
/*find position of first occurrence of 'pig' in phrase column*/
data new_data;
set original_data;
indexw_pig = indexw (phrase, 'pig');
run ;
/*view results*/
proc print data = new_data;
名为indexw_pig的新列显示单词“pig”在表达式列中第一次出现的位置。
如果单词“pig”从未出现在表达式列中,则INDEXW函数仅返回值0 。
例如,从结果中我们可以看到:
第一句中“猪”一词第一次出现的位置是3 。
第二行句子中不单独包含“pig”一词,因此返回值0 。
等等。
INDEX 和 INDEXW 函数的区别
SAS 中的INDEX函数返回特定子字符串在另一个字符串中第一次出现的位置。
相反, INDEXW函数返回特定单词在另一个字符串中第一次出现的位置。
根据定义,单词前后必须有空格。
以下示例说明了INDEX和INDEXW函数之间的区别:
/*create new dataset*/
data new_data;
set original_data;
index_pig = index (phrase, 'pig');
indexw_pig = indexw (phrase, 'pig');
run ;
/*view new dataset*/
proc print data = new_data;
index_pig列显示子字符串“pig”在短语列中第一次出现的位置。
indexw_pig列显示单词“pig”在表达式列中第一次出现的位置。
其他资源
以下教程介绍了如何使用 SAS 中的其他常用函数:
SAS中SUBSTR函数的使用方法
如何使用SAS中的COMPRESS函数
如何使用SAS中的FIND函数
SAS中COALESCE函数的使用方法