SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 1021|回复: 4
打印 上一主题 下一主题

新手问初级问题

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2004-3-18 07:05:44 | 只看该作者

新手问初级问题

1、SAS编程是否也像其他语言一样定义全局变量,局部变量
2、
data newair
set mylib.internationtours
new aircoust= aircost
在这个例子中,newair是临时的还是permanent
3。当SAS遇到一个变量时,它是如何决定从那个DATA SET中找这个变量的 定义的
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2004-3-18 08:45:15 | 只看该作者

Re: 新手问初级问题

[quote="smartie":fdb83]1、SAS编程是否也像其他语言一样定义全局变量,局部变量
2、
data newair
set mylib.internationtours
new aircoust= aircost
在这个例子中,newair是临时的还是permanent
3。当SAS遇到一个变量时,它是如何决定从那个DATA SET中找这个变量的 定义的[/quote:fdb83]

简要回答如下,不妥之处请各位批评。
1.对于数据集,没有全局变量和局部变量之分,但SAS中存在系统变量,可提供进程有关的各种信息或执行各种控制功能。对于SAS宏,存在全局宏变量和局部宏变量之分。

2.newair是临时数据集。对于一级命名的sas数据集,比如这里的newair,以及二级命名的work.****,如work.newair,都是临时数据集;对于除上述二级命名的数据集外,其余二级命名的数据集,均可视为永久数据集,如sasuser.class。

3.sas的各个程序步,均有相应的语句选项指定所处理的数据集,如未指定则默认最近产生的数据集为当前数据集,变量则是从该数据集中寻找了。
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2004-3-18 09:16:38 | 只看该作者

多谢

如果当前数据集没有找到变量,是程序出错还是到某处继续查找
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2004-3-18 10:32:06 | 只看该作者

Re: 多谢

[quote="smartie":3decb]如果当前数据集没有找到变量,是程序出错还是到某处继续查找[/quote:3decb]
in general,the program you submit will be compiled first and at that time SAS will determine which variables will be output.If you have used set statement in your program,all the variables in the set-dataset will be read into PDV in addition to any new variable encountered in the following codes.hence,if SAS can't find a variable in the dataset  the variable will be thought as a new variable in the pdv and no error occurs.The fact can will be easily demonstrated by some simple examples.Probably I miss your points so your comment will be welcome.
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2004-3-18 23:17:54 | 只看该作者
Maybe it is out of your interests, but I have to say a few words.  The previous postings are talking about variables in data sets only, not the macro variables.  Please be noted that there is a difference between GLOBAL and LOCAL Macro Variables, if a macro variable is local, it can be solved to different string in different locations.
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-8 15:21 , Processed in 0.188587 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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