① 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)。