java 与sas交互_SAS与MACRO的交互使用
SAS代码和宏如何交互使用
1SAS代码,但是没有宏语言元素
%macro mac1;
data one;
x1=11;
x2=22;
x3=33;
run;
%mend mac1;
%mac1
这种类型的宏载经常使用到同样的数据步时就很有作用,避免重复性代码。
2SAS代码和宏元素之间的步骤边界
%macro mac2;
%local blah;
data one;
x=1;
%let blah=11;
%put in DATA step before PUT statement
blah=&blah;
put x=;
%let blah=22;
%put in DATA step after PUT statement
blah=&blah;
run;
%put after DATA step;
%mend mac2;
%mac2
该宏运行的日志:
in DATA step before PUT statement
blah=11
in DATA step after PUT statement
blah=22
x=1
NOTE: The data set WORK.ONE has 1 observations
and 1 variables.
NOTE: DATA statement used (Total process
time):
real time 0.00 seconds
cpu time 0.01 seconds
after DATA
step
3使用宏逻辑条件来产生SAS语句
%let includex2=1;
%macro mac3(macvar=);
data one;
x1=11;
%if &macvar=1 %then
%do;
x2=22;
%end;
x3=33;
run;
%mend mac3;
%mac3(macvar=&includex2)
%let includex2=-999;
%macro mac3(macvar=);
data one;
x1=11;
%if &macvar=1 %then
%do;
x2=22;
%end;
x3=33;
run;
%mend mac3;
%mac3(macvar=&includex2)
4使用宏循环产生SAS语句
%macro mac4;
%local j;
data two;
set one;
rename
%do j = 1 %to 3;
x&j =
y&j
%end;
;
run;
%mend mac4;
%mac4;
这个程序迭代产生SAS语句
5使用宏产生循环的另外一种方法
%macro mac5;
%local j;
%do j = 1 %to 3;
x&j =
y&j
%end;
%mend mac5;
data two;
set one;
rename
%mac5
;
run;
6使用数据驱动代码更改变量名称
proc sql noprint; (1)
select name
into
:var1-:var&sysmaxlong
from dictionary.columns
where libname="WORK"
and memname="ONE"
and upcase(substr(name,1,1))="X";
%let
num_vars=&sqlobs;
quit;
%macro mac6;
%local j;
%do j = 1 %to
&num_vars;
&&var&j =
old_&&var&j
%end;
%mend mac6;
proc datasets library=work nolist;
modify one;
rename
%mac6
;
run; quit;
proc sql noprint;
select name into :var_names separated by '
'
from dictionary.columns
where libname="WORK"
and memname="ONE"
and upcase (substr(name,1,1))="X";
%let
num_values=&sqlobs;
quit;
%macro mac6;
%local j;
%do j = 1 %to
&num_values;
%scan(&var_names,
&j) = old_%scan(&var_names,
&j)
%end;
%mend mac6;
proc datasets library=work nolist;
modify one;
rename
%mac6
;
run; quit;
java 与sas交互_SAS与MACRO的交互使用相关推荐
- Java连接SAS,与SAS Server交互
Java连接SAS,与SAS Server交互 运行环境说明 依赖环境准备 连接SAS Server 获取JDBC连接,并执行sql 运行环境说明 sas-server: 9.4 java: 1.8 ...
- Java通SAS下载sas脚本
Java通SAS下载sas脚本 简述 配置workspace和配置libname信息 下载文件 简述 书接上回,有时候需要将执行好的sas数据库文件对外提供,实际程序和sas不在同一台服务器上,不想挂 ...
- 皇nity webgl与html交互文件,Vue与UnityWebGl交互通信
Vue与UnityWebGl交互通信 Vue与UnityWebGl交互通信 最近项目需要在可视化界面内添加unity3D文件并进行交互展示效果,特此整理如下: 1.Vue 中自带 Unity3D的依赖 ...
- html5的交互式微课,一种交互式微课的控制方法及交互式微课与流程
技术特征: 1.一种交互式微课的制作方法,其特征在于,包括以下步骤: 获取预设版面: 在所述预设版面中插入至少一个交互对象: 获取音频流: 根据所述音频流确定时间轴,所述时间轴包括至少一个交互点,所述 ...
- html5的交互式微课,内嵌交互式微课的设计与制作
一.交互式微课概述作了交互式微课.微课的使用最早应用于美国可汗学院的翻转课堂教二.交互式微课的设计学模式,近几年国内学者对于微课的研究逐渐深化,交1.内嵌交互式微课的设计原则互式微课成为当下的研究重点 ...
- java做服务端,FLASH做客户端交互总结
经过大概2周的时间,做完了1个JAVA做服务器FLASH做客户端的交互例子.期间碰到些麻烦事,总结下做个记录. 1.安全域问题,当服务器在本地启动的时候,如果没有进行对应配置直接让FLASH访问服务器 ...
- java基于http协议客户端与服务器端的交互,通俗易懂客户端与服务器端交互原理(HTTP数据请求与HTTP响应,包括Servlet部分...
经 常看到HTTP客户端与服务器端交互原理的各种版本的文章,但是专业术语太多,且流程过于复杂,不容易消化.于是就按照在 Servlet 里面的内容大致做了一些穿插.本来 连 Tomcat 容器 和 S ...
- python 访问sas 逻辑库_SAS岩论 | 在Jupyter Notebook中使用SAS
原标题:SAS岩论 | 在Jupyter Notebook中使用SAS 在Jupyter Notebook中使用SAS Jupyter Notebook目前已成为绝大多数编程人员首选的工具.尤其是学习 ...
- Java框架-SpringMVC的应用(json数据交互、控制器方法返回值、文件上传)
1. 搭建SpringMVC开发环境 1.1 创建项目,添加依赖 <?xml version="1.0" encoding="UTF-8"?> &l ...
最新文章
- RDKit toolkit实战二:Generating Similarity Maps Using Fingerprints
- 模型的第一层:详解torch.nn.Embedding和torch.nn.Linear
- 在 CentOS 7 中安装并使用自动化工具 Ansible
- 服务 TCP 断线错误分析
- 图解VC++版PE文件解析器源码分析
- java实现手机短信验证全过程
- CISCO 2950,3550交换机的端口隔离
- TNN MatConvertParam参数scale和bias设置
- 关于H3C MSR路由器L2TP隧道协议路由配置的特点
- TCP/IP 笔记一
- JavaScript 删除Cookie
- oracle 安装ora 27102,Oracle ora-27102 错误
- TDSQL 在微众银行的大规模实践之路
- MATLAB 2017 b 安装+下载+破解(win10,linux,mac)
- java基础编程题书籍
- DisplayPort-DP接口知识
- 问题1362:小鑫鑫的平均分
- linux poodle漏洞,Claws Mail 3.11.0发布 修复了POODLE 漏洞
- 200行代码搞定一个购物网站+电影站+APP
- RISC-V指令集架构------RV32I基础整数指令集
热门文章
- 重磅!微信、淘宝、抖音、支付宝或将迎来“超级监管”
- 【报告分享】2021快手内容生态半年报:从心出发.pdf(附下载链接)
- 离开小厂进大厂的第一周:我“后悔”了
- 大数据Hive深入讲解
- 赛道二周冠分享:石头哥有些心里话要说一说
- 统一对比学习框架?没错它来了。
- BART原理简介与代码实战
- 跨境电商是什么?跨境电商有哪些模式?
- Leetcode每日一题:206.reverse-linked-list/solution(反转链表)
- 第二十三:Appium+Pytest实现app并发测试