1

SAS 编程 0.0 非常新我正在尝试将标题“数据集健康列表”更改为全部大写,而我正在做的事情不起作用。请帮助。

proc format;
value $Gender
'M'='Male'
'F'='Female'
other= 'Unknown'; * Handle Missing Values;
run;
data health;
infile '/folders/myfolders/health.txt' pad;
input @1 Subj $3.
@4 Gender $1.
@5 (Age HR) (2.)
@9 (SBP DBP Chol) (3.);



if Chol gt 200 then do;
Stoke_Risk = 'High';
LDL_Group = 'Bad';
end;

if Age le 21 then Age_Group = 1;
else if Age le 59 then Age_Group = 2;
else if Age ge 60 then Age_Group = 3;

format Gender $Gender.; *this line could be under data or proc
print;

Current_Year = year(today()); *current year based on today and year function;
Short_Gender = lowcase(Gender); *lower case function for string;
ABP = mean(SBP, DBP); *mean of blood pressure;

run;

title "Listing of Data Set Health";
proc print data=health;
ID Subj;
run;
4

2 回答 2

0

您可以在标题语句中将其显式更改为大写:

title "LISTING OF DATA SET HEALTH";

如果要动态更改标题,可以编写如下宏:

%let title = "Listing of Data Set Health";
title "%upcase(&title.)";
于 2020-08-05T12:55:18.133 回答
0

title语句是在开放代码中使用的全局语句。如果您希望它始终为大写,您将需要直接以大写形式输入您的标题:

title "LISTING OF DATA SET HEALTH";

如果您希望无论键入什么内容都始终为大写,则需要深入研究 SAS Macro Facility 和宏功能。这是 SAS 的一个更高级的方面,您将在后面介绍。

%upcase()宏函数可以在开放代码中用于将任何文本转换为大写。

title "%upcase(listing of data set health)";

请注意,此函数不同于upcase()您将在数据步骤中使用的函数。以 开头的函数%是特殊的宏函数。

于 2020-08-04T21:24:59.973 回答