① SAS库字段更新问题 如何使用sql的replace函数更新SAS数据库中的字段,具体如下
SAS没有replace函数,有字符替换功能的倒是translate函数。试试下面的程序:
proc sql;
update t
set f=translate(f,'-','_');
quit;
② 请教调用外部SAS数据库问题
你可能混淆了数据文件和数据集。扩展名为sd2的文件应为SAS数据集,可以直接用来分析用,infile语句用来读取外部数据文件(为纯文本文件),进一步生成数据集。试试下面的程序libname test 'd:\sas';proc npar1way wilcoxon data=test.jyk;class group;var p10105;run;
③ sas怎么读取access数据
以SAS 9.4 64位为例。主要有两种导入方式:
1、手动点选导入。
(1)点击“文件”---“导入数据”---“standard data source”---"Microsoft access Database"
这个界面是询问是否需要将导入数据的编码保存,如果想要保存则点击“Broswe”键选择路径后点击“fInish”,如果不要保存则直接点击“fInish”。
这样就完成了导入,只要等待SAS将数据库读入就行(数据库越大耗费时间越长,半小时都有可能)。
12、代码运行导入。
这里的代码其实就是第一种方法中最后一步中可以选择保存的导入数据编码。
代码如下:
PROC IMPORT OUT= WORK.a
DATATABLE= "2010Table"
DBMS=ACCESS REPLACE;
DATABASE="E:Study数据 .mdb";
SCANMEMO=YES;
USEDATE=NO;
SCANTIME=YES;
RUN;
主要修改的地方就是“WORK.a”(SAS拟存储数据的数据集名)、"2010Table" (数据库中的表名)、"E:Study数据 .mdb"(数据库路径)三个。其他一般不需要修改,除非数据库有访问密码等。
需要注意的是不同版本的SAS对数据库文件支持度不同,9.2貌似只支持97-03格式的access(.mdb),后续版本则支持10的版本(.accdb)。