设为首页收藏本站

EPS数据狗论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1301|回复: 0

SAS input 语句

[复制链接]

38

主题

328

金钱

536

积分

初级用户

发表于 2019-7-4 13:30:13 | 显示全部楼层 |阅读模式

SAS input 语句

data test;
infile
cards ;
input x @;
input  y;
input z @@;
cards;
1 2 3 4 5 6
7 8 9 10 11 12
13 14 15 16 17
;
run;
proc print;
run;

一个data步读取数据是多个循环构成的。
一个input语句执行完之后立即换行继续下面的语句;
若在input语句之后加@,则该行以及之后的数据保留到下一个input语句开始读入数据;
若在input语句之后加@@,则该行以及之后的数据保留到下一次data步循环。
obs x y z
1 1 2 7
28 9 13


@@表示读数据的时候不换行

例1:DATA A;

INPUT x y  @@;

z=x+y;

y=y+1;

CARDS;

1 2 3 4 5 6

;

proc print;

RUN;



解析: 第一次循环:x=1 y=2 z=1+2=3  y=3  

第二次循环:X=3 y= 4 z=7 y=5

第三次循环:X=5 y= 6 z=11y=7

obs x y z
1 1 3 3
2 3 5 7
3 5 7 11


例2:
DATA A;

INPUT X Y  @@;

S+X;

CARDS;

3 5 7 9 20 21

;

proc print;

RUN;

解析: 第一次循环:x=3  z=3+0=3

第二次循环:X=7 z=10

第三次循环:X=20 z=30

obs x y s
1 3 5 3
2 7 9 10
3 20 21 30

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

客服中心
关闭
在线时间:
周一~周五
8:30-17:30
QQ群:
653541906
联系电话:
010-85786021-8017
在线咨询
客服中心

意见反馈|网站地图|手机版|小黑屋|EPS数据狗论坛 ( 京ICP备09019565号-3 )   

Powered by BFIT! X3.4

© 2008-2028 BFIT Inc.

快速回复 返回顶部 返回列表