nectar 发表于 2011-8-4 06:55 
各位专家,我跑SAS遇到的问题是:我的电脑有C盘和D盘,C盘仅剩下10几G的空间,但是D盘空间仍很大。最近,我 ...
nectar, 一般来说work是临时数据库,并且随SAS启动,自动设置到默认的目录下(一般是C盘)。你是想更改work到D盘,有些语言好像可以更改默认目录的,但是在SAS里面我还没找到(可能有)。
一般来说,都是用libname进行数据库的操作,而帮助里面很清楚的写着libname是进行永久数据库的操作的。但是对于你的这种情况,有两种办法:
1,用libname指定一个数据库到D盘,比如 libname nectar_lib "D:/"; 然后后面都用二级文件的形式nectar_lib.xxx 来操作数据集;
很显然,你对每次都调用一个数据集都有加前缀nectar_lib不是很满意,总会觉得麻烦,要是像work那样用一级文件名表示就好了。那么这里有一个方法二,可以看看。
2,直接上代码先:
libname user "d:\sastem";
data ex;
input a b c;
cards;
1 3 55
3 4 5
;
run;
运行一下,是不是发现一级文件名ex都在D盘的SAStem(你必须在D盘指定一个存在的文件夹)下,并没有在work里面,这样感觉是不是很爽。
这里必须说明的是,user是一个永久库,里面的文件并不会随SAS关闭而消失,但是你打开目录都可以看到,就一普通的文件夹,复制粘贴删除,你随便怎么操作都行。
注:如果你是个纠结的人,你又想把数据放work里面,这好办,加一个代码:libname user clear; 就可以了。