SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 901|回复: 3
打印 上一主题 下一主题

为什么用format建立数据格式后,输出的格式还是原来的?

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2004-4-15 23:50:52 | 只看该作者

为什么用format建立数据格式后,输出的格式还是原来的?

多谢各位热心帮忙!特别感谢Willon,每个问题都热心回答我。还有SAS_Dream,小猪,我按照你们的方法解决了问题。
1、对一些数据进行汇总,如年龄 age 16、20、30...建立了format 10-20 ='young' 20-30='old' ....,用proc summary .... format age age. ,在SAS中生成的表也显示 'young', 'old',但是用export 输出到excel 后还是显示 '10'  ,'16'...,为什么?如何能生成和在SAS中汇总表中一样的结果?
2、简单问题,如何把SAS格式的表保存下来?
每次用DATA XX ;
      input XXXX XX ;
         datalines;
         XX XX
         XX XX
         ;
生成的表只存在于work下,关了SAS后再想用就只能再生成一次了。
3、在work 下的表,如何调用?
比如生成了表 temp1
             name id gender
                    XX    01 M
                    XX    90 F
想把它转化成其它SAS表格式,需要处理数据,如何象原来的数据一样调用它?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2004-4-16 01:50:15 | 只看该作者
1. SAS format works only for SAS software, it can not be output to EXCEL.  If you want to see the formated data in EXEL, you have to create another variable by age_catgory=put(age,age.);

2. You have to create a SAS library and write the data set to a permanent SAS data set.

3. It is trvial, set as DATA A; SET B; assume B is already in WORK library.
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2004-6-3 21:33:41 | 只看该作者

回复

1、对一些数据进行汇总,如年龄 age 16、20、30...建立了format 10-20 ='young' 20-30='old' ....,用proc summary .... format age age. ,在SAS中生成的表也显示 'young', 'old',但是用export 输出到excel 后还是显示 '10'  ,'16'...,为什么?如何能生成和在SAS中汇总表中一样的结果?

如上,对重复的值给不同的格式,会出错吧?
20究竟是算'young' 还是'old'?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2004-6-3 22:51:37 | 只看该作者

回复

[quote:54ee4]20究竟是算'young' 还是'old'? [/quote:54ee4]
算young. 谁先被分配就算谁。

[code:54ee4]proc format ;
value agef
        10-20 ='young'
        20-30='old'
        30-40='...'
;
run;[/code:54ee4]
相当于 
[code:54ee4]proc format ;
value agef
        10-20 ='young'
        20<-30='old'
        30<-40='...'
;
run;[/code:54ee4]
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-1-10 07:59 , Processed in 0.106981 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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