基于以值结尾的值筛选where条件

  • 本文关键字:筛选 where 条件 结尾 sas
  • 更新时间 :
  • 英文 :


熟悉使用like函数过滤字符值,对数值也可以这样做吗?

Col A     Col B
1         3214.22 
2         4432.11
3         11.65
4         342.98

例如,以下适用于字符值:

data test;
set table (Where = (Col B like '%.22));
run;

您可以执行计算来确定比较所需的小数部分。

data want;
set have;
where round ( abs(b) - int(abs(b)), 1e-8 ) = 0.22;  /* 1e-6 is rounding level, used here as a fuzz factor */
run;

或者,根据@whymath,比较函数(如CATSPUTN(返回的数值的字符表示。

where cats(b) like '%.22'; /* character value being compared depends on BESTw. chosen by CATS */
where put(b,best15.2) like '%.22';  /* match fractional parts >= .215 to < .225 */

最新更新