继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

SAS Format

乌然娅措
关注TA
已关注
手记 64
粉丝 22
获赞 12

SAS Day 19: Format

**Background: **

In clinical datasets, we usually use some shortcode to keep the data to be concise, meanwhile, we want to generate detailed table labels from the datasets so the output is reader-friendly. For example, in the dataset, we have “F, M”, and we want to show “Female, Male” in output tables.

How do we convert the shortcode from the dataset into the detailed labels in output?

Problem:

We want to label the Complete Response, Unconfirmed Complete Response, Partial Response, Stable Disease and Disease Progression according to correspondence  AVAL(analysis value) .

There are a couple of methods to achieve this goal, however, what is the most efficient way?

[caption id=“attachment_1458” align=“alignnone” width=“500”]image

Alexas_Fotos / Pixabay[/caption]

Solution:

Method 1. If Clause:

if aval=1 then label="CR ";
if aval=2 then label="CRu";
if aval=3 then label="PR ";

Method 2. Format:

proc format;
  value aval 
  1="CR - n(%)"
  2="CRu - n(%)"
  3="PR - n(%)"
  4="SD - n(%)"
  5="PD - n(%)"
  ;

data sample;
set sample;
label="  "||put(aval,aval.);
run;

Output:

image

Basic Format Syntax:

proc format;
  value variable
  1="x"
  2="y"
  3="z"
  ;

data all;
set all1;
label= "  "||put(variable,variable.);
run;

Summary:

To create a specific label to clearly express the data information to the audience, the “If clause”  is the most straight forward way. The “Format” expression is a more systematical way that could build for repetitive usage. In addition, “Format” is critical in Date expressions.

**Happy Studying! **😏

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP