新浪博客

SAS 之 COALESCE()函数应用

2015-05-12 11:51阅读:
【SAS proc sql】对缺失值的处理
1 proc sql; 2 select date,coalesce(city,1),wangnei from mysas.mms; 3 quit;
coalesce()函数可以判断字段的缺失值并用指定的值来代替,注意字段值类型需要和指定的值类型保持一致。


DATA EDGES.NODES_NETWORK_INFULENCE;
SET EDGES.NODES_NETWORK;
IF ZSELLERCODE='' THEN DO;
IF ZSELLERCODE_SELECT^='' THEN NODES_CODE= ZSELLERCODE_SELECT;
ELSE NODES_CODE=ZBUYERCODE;
END;
ELSE NODES_CODE=ZSELLERCODE;
IF MISSING(NODES_FLAG_S) THEN NODES_FLAG= NODES_TYPE_B;
ELSE NODES_FLAG= NODES_FLAG_S;
INFULENCE=
COALESCE(SELLER_CENTRALITY_1,0)
/&CV_SELLER_CENTRALITY_1.
+SQRT(COALESCE(SELLER_CENTRALITY_2,0)/&CV_SELLER_CENTRALITY_2.)
+SQRT(COALESCE(ABS(SELLER_AVG_AMT_MONTHLY_ADJ),0)/&CV_SELLER_AVG_AMT_MONTHLY_ADJ.)
+SQRT(COALESCE(ABS(SELLER_REL_MONTH_NUM),0)/&CV_SELLER_REL_MONTH_NUM.)
+(COALESCE(BUYER_CENTRALITY_1,0)/&CV_BUYER_CENTRALITY_1.
+SQRT(COALESCE(BUYER_CENTRALITY_2,0)/&CV_BUYER_CENTRALITY_2.)
+SQRT(COALESCE(ABS(BUYER_AVG_AMT_MONTHLY_ADJ),0)/&CV_BUYER_AVG_AMT_MONTHLY_ADJ.)
+SQRT(COALESCE(ABS(BUYER_REL_MONTH_NUM),0)/&CV_BUYER_REL_MONTH_NUM.))/&DISCOUNT.;
RUN;

我的更多文章

下载客户端阅读体验更佳

APP专享