楼主: wzy_630
4524 2

[问答] 紧急求助“retain type'C' fmtname'FMT';”!!! [推广有奖]

  • 0关注
  • 3粉丝

已卖:653份资源

博士生

56%

还不是VIP/贵宾

-

威望
0
论坛币
1683 个
通用积分
6.2531
学术水平
4 点
热心指数
8 点
信用等级
3 点
经验
7500 点
帖子
240
精华
0
在线时间
315 小时
注册时间
2009-12-1
最后登录
2025-3-12

楼主
wzy_630 发表于 2011-1-12 14:39:40 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
刚开始接触SAS代码,到一家新单位,看不懂同事写的SAS代码:

Data FMT;
set custinfo end=last;
RETAIN TYPE "C" FMTNAME "FMT";
START=CUST_ID_NBR;
LABEL='Y';
OUTPUT;
IF LAST THEN DO;
START='';LABEL='';HLO='';OUTPUT;
END;
RUN;
PROC FORMART CNTLIN=FMT;

查了V8教材和sas帮助文件,好像都没明确说明。搞不懂啊,这段代码有什么作用?

retain,type,fmtname有什么作用,为什么要这样写呢?
还有start,label,hlo?

坐等高手解释!!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:fmtname RETAIN 紧急求助 type name 求助 type fmt RETAIN fmtname

沙发
elek.me 发表于 2011-1-12 15:23:47
这是自定义format的过程,之间的data fmt里面的字段,都是sas规定在自定义format的时候必须要有的字段。

RETAIN TYPE "C" FMTNAME "FMT";
这只是一个retain语句,retain语句在data步的运行过程中,在每一个loop时,阻止pdv中retain变量被赋空值。这个的话,建议你去看一下data步的编译和执行过程,就会容易明白。
type 和 fmtname没什么特别的,就是变量名而已。
我的博客: http://elek.me/sas
联系我: http://about.me/elek

藤椅
wzy_630 发表于 2011-1-12 16:37:36
"都是sas规定在自定义format的时候必须要有的字段"

好的,我再翻翻v8里面自定义format的内容

谢谢!

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 20:56