在SAS編程過程中叽讳,如果想通過關(guān)鍵字或快捷鍵輸入特定的程序代碼快压,就需要利用縮寫(Abbreviation)或鍵盤宏(Keyboard Macros)的功能糙俗。
顯而易見,將特定代碼保存到關(guān)鍵字或快捷鍵中直秆,通過關(guān)鍵字或快捷鍵調(diào)用輸出胖翰,將會提升SAS編程的效率。
例如切厘,新建程序一般需要包含Header說明信息萨咳,可以直接把代碼模板保存到header_s
、header_qc
關(guān)鍵字中(有的公司直接通過腳本新建程序疫稿,無需這樣操作)培他;例如,同一類型的SAS程序結(jié)構(gòu)基本類似遗座,可以將同類型結(jié)構(gòu)直接保存到關(guān)鍵字中舀凛,sdtm_s
、sdtm_qc
途蒋、table_s
猛遍、table_qc
;例如号坡,一些Efficacy Model示例程序保存在關(guān)鍵字中懊烤,logistic
、glm
宽堆、mixed
腌紧;例如,自己常用的宏程序畜隶,cat
壁肋、stat
……
特定程序的關(guān)鍵字或快捷鍵的設(shè)置是非常個性化的,根據(jù)個人喜好或者編程習(xí)慣進行設(shè)置籽慢。當然浸遗,不進行設(shè)置關(guān)鍵字,將程序保存在特定位置箱亿,編程時自行參閱跛锌,也不是件很麻煩的事情。
下面介紹SAS EG與SAS中极景,縮寫以及鍵盤宏的設(shè)置察净。不同SAS版本的菜單操作位置及名稱略有不同驾茴。SAS演示版本為盼樟,SAS EG 8.2,SAS 9.4锈至。
1. 縮寫(Abbreviation)
縮寫(Abbreviation)的功能是晨缴,將一段代碼保存在一個字符串中。在SAS編輯器中峡捡,通過輸入這個字符串來快速輸入這一段代碼击碗。
1.1 SAS EG
在菜單欄中筑悴,點擊Program-New snippet,進入縮寫設(shè)置的界面稍途。
在頁面中設(shè)置好阁吝,縮寫名稱以及對應(yīng)的程序內(nèi)容,可以直接復(fù)制粘貼程序械拍。
在SAS編輯器中突勇,輸入縮寫名稱會彈出提示,按Enter或Tab建坷虑,會直接輸出保存好的代碼甲馋。
1.2 SAS
在菜單欄中,點擊Tools-Add Abbreviation迄损,進入縮寫設(shè)置的界面定躏。
在頁面中設(shè)置好,縮寫名稱以及對應(yīng)的程序內(nèi)容芹敌,可以直接復(fù)制粘貼程序痊远。
在SAS編輯器中,輸入縮寫名稱會彈出提示氏捞,按Enter或Tab建拗引,會直接輸出保存好的代碼。
2. 鍵盤宏(Keyboard Macros)
鍵盤宏(Keyboard Macros)的作用與縮寫類似幌衣,通過“錄制”一段代碼矾削,為代碼設(shè)置快捷鍵,通過快捷鍵進行調(diào)用豁护。
需要注意的是哼凯,鍵盤宏無法像縮寫那樣通過鍵入關(guān)鍵字來進行輸入,需要使用設(shè)置好的快捷鍵楚里。并且断部,設(shè)置快捷鍵時,不能與其他快捷鍵造成沖突班缎,否則會出現(xiàn)調(diào)用失敗的情況蝴光。
2.1 SAS EG
在菜單欄中,點擊Program-Editor macros-Record new达址,進入鍵盤宏的錄制界面蔑祟。
在SAS編輯中輸入或復(fù)制粘貼想要保存的代碼,輸入完畢后沉唠,在菜單欄中疆虚,點擊Program-Editor macros-Stop recording,結(jié)束鍵盤宏的錄制。
在彈出的窗口中径簿,輸入鍵盤宏的名稱罢屈,并設(shè)置對應(yīng)的快捷鍵。這里的快捷鍵不能與其他快捷鍵沖突篇亭,否則可能造成無法調(diào)用的問題缠捌。
在SAS編輯器窗口,按住快捷鍵Ctrl+1译蒂,就可以輸入剛剛保存的代碼鄙币。
2.2 SAS
在菜單欄中,點擊Tools-Keyboard Macros-Record New Macro蹂随,進入鍵盤宏的錄制界面十嘿。
在SAS編輯中輸入或復(fù)制粘貼想要保存的代碼,輸入完畢后岳锁,在菜單欄中绩衷,點擊Tools-Keyboard Macros-Stop Recording,結(jié)束鍵盤宏的錄制激率。
在彈出的窗口中咳燕,輸入鍵盤宏的名稱,并設(shè)置對應(yīng)的快捷鍵乒躺。這里的快捷鍵不能與其他快捷鍵沖突招盲,否則可能造成無法調(diào)用的問題。
總結(jié)
文章介紹了嘉冒,利用SAS縮寫以及鍵盤宏曹货,輸出特定代碼段的操作。在一定程度上讳推,這會提升SAS編程的效率顶籽。
個人體驗下來,縮寫的操作更為簡便银觅,推薦使用礼饱。
感謝閱讀, 歡迎關(guān)注:SAS茶談究驴!
若有疑問镊绪,歡迎評論交流!