999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

流行病學調查報告數據標準化入口的SAS實現*

2013-07-27 09:30:34東南大學公共衛生學院流行病與衛生統計系210009王詩遠
中國衛生統計 2013年1期

東南大學公共衛生學院流行病與衛生統計系(210009) 王詩遠 劉 沛

Epidata以其操作簡單,界面友好以及強大的錄入和核查功能,尤其是可方便地下載免費的漢化版受到了我國流行病與醫學統計工作者的青睞〔1〕。但在應用中,尤其在大型流行病學分析報告過程中,由于多方合作及Epidata設計上的不合理等多方面原因,常常出現Epidata數據庫變量命名不規范、變量標簽及變量值標簽缺失或不完整等問題。這些問題的存在不僅對數據整理造成了不便,也為統計分析和統計圖表的制作增加了難度和工作量,同時也為標準化自動分析報告程序的構建和應用造成了障礙。針對上述問題,本文對Epidata數據進入SAS的標準化數據入口程序構建進行了研究,在介紹其方法學的同時,通過流行病學實例說明了我們所建立方法的實用價值。

方法介紹

為解決前文所述問題,一般方法是在SAS DATA步中利用RENAME語句對變量進行重命名使其規范統一;利用LABEL語句對變量進行標簽添加;利用SAS PROC FORMAT過程自定義輸出格式,并用FORMAT語句將格式應用于變量以實現對變量值標簽的添加〔2〕。此種方式缺點為在補充信息時需要對照分析數據集,觀察變量標簽及其取值。當數據庫結構復雜,取值多樣時,難免增大工作的難度、出錯的概率及書寫大量信息語句的工作量。此種方式的局限性還表現為當自定義格式包含信息不全時,無法對原有的自定義格式信息進行添加,也無法解決當前已定義的自定義格式中已存在的標簽值修改問題。

例如,變量SEX自定義輸出格式為:1為男,2為女,但缺失值標簽在格式中未定義,傳統方法難以解決缺失值標簽添加的問題。另外,即使1和2的值標簽都已定義,但若想將‘男’替換為‘男性’,也難以實現,為后續的統計表格制作帶來諸多不便。本文提供的方法較好地解決了這些問題,從而為自動輸出規范化的統計報表提供了便利。

1.變量規范化重命名及標簽添加的宏程序

在處理變量規范化重命名及標簽添加時,利用SAS中SQL數據字典得到目標分析數據集的變量相關信息保存至數據集,隨后輸出至excel,并利用其友好的界面,方便直觀地進行編輯。最后導入SAS形成參數,利用全局X語句并結合X語句相關的系統選項,實現excel文件的打開并保證程序運行的連續性。導入excel參數后,利用標準化程序實現變量重命名及變量標簽的添加及更改。具體程序及參數解釋見本文的應用實例。

(1)SQL數據字典簡介

SQL可以通過FROM語句查詢隱藏邏輯庫DICTIONARY下屬成員快速獲取全部邏輯庫、數據集、SAS系統選項及與當前會話相關的外部文件的相關信息。值得一提的是,邏輯庫DICTIONARY僅可以通過SQL進行查詢。但SAS系統還提供了一系列基于SQL數據字典〔3〕,明確儲存在SASHELP邏輯庫下的視圖來實現DATA及PROC對數據字典的訪問功能。部分常用DICTIONARY成員名稱、包含信息及對應視圖見表1。

表1 常用DICTIONARY成員、包含信息及對應視圖

(2)全局X語句簡介

X語句是SAS提供的主機操作系統的接口全局語句,分析人員可以通過X語句在SAS會話中直接發布主機操作系統命令,達到系統操作的目的。例如創建文件夾、拷貝文件、打開文件等功能。值得一提的是,結合X語句相關的SAS系統選項,可以讓程序的運行更加靈活〔2〕。X語句相關的SAS系統常用選項見表2。

表2 全局語句X相關系統選項及功能

2.變量自定義格式定制、修改、補充的宏程序

在處理定制、修改、補充自定義格式的問題上,可以巧妙利用PROC FORMAT的輸出控制數據集選項CNTLOUT=〔4〕,將格式信息轉換成輸出控制數據集并在數據集層面實現自定義格式的定制、修改、補充功能。在上一步工作完成后利用輸入控制數據集選項CNTLIN=,通過外部數據集創建自定義格式〔4〕。輸入輸出控制數據集中關于格式定義的常用關鍵變量見表3。

表3 輸入輸出控制數據集常用變量功能

同樣,在數據集層面的定制、修改、補充自定義格式的工作也可以利用excel界面進行編輯和配置參數,并用全局X語句及相關的系統選項,實現excel文件的操作并保證程序運行的連續性。具體程序及參數解釋見本文的應用實例。

應用實例

以我們參與的國家科技重大專項“艾滋病和病毒性肝炎等重大傳染病防治”中生命質量調查數據為例,說明標準化入口程序的使用過程及部分關鍵語句的釋義。該數據庫共分人口學特征、健康狀況等7個維度共213個變量。數據庫存在多種問題如:變量命名不規范、變量標簽設置不合理、變量標簽缺失、變量值標簽缺失、變量值標簽不統一等。本文選取其中有代表性的部分問題變量列于表4。

通過數據標準化入口程序完成數據的標準化過程如下:

1.調用宏%CHANGENAMEANDLABEL

宏程序中參數CHANGENAMEANDLABELIN表示目標數據集,CHANGENAMEANDLABELEXCEL表示輸出excel位置及名稱。程序運行過程如下:

(1)生成局部宏變量LIB和DATASET,分別存放通過截取CHANGENAMEANDLABELIN參數獲得的邏輯庫和數據集名稱。如果用戶提供一級名稱則默認LIB=WORK。

(2)通過LIB和DATASET或取數據集變量名稱及其標簽,并生成兩個新變量用于存放新變量名及標簽。

表4 流行病現場調查中的部分問題變量

(3)生成EXCEL參數表,并利用X語句打開完成參數配置,見表5(選取部分變量)。

表5 重命名及標簽添加、修改參數表

(4)讀取參數配置結果,讀取新變量名參數及原變量名分別存放在宏變量NEWNAMELIST和RENAMELIST中,新變量標簽參數及原變量名至宏變量至NEWLABELLIST和RELABELLIST中,同時計算重命名參數及變量標簽參數個數分別存放在NAMENOBS和LABELNOBS中,為建立循環自動更新做準備。值得注意的是,可以通過讀取非空的定義參數使上述RELABELLIST和NEWLABELLIST、NEWNAMELIST和RENAMELIST中的單元數目相等且一一對應。

(5)通過循環實現重命名、標簽添加和更新。

參數DEFINEVARFORMATIN為目標分析數據集,CLASSFIABLEEXCEL為存放 Exce的位置及名稱,CLASSFIABLELEVELLIMIT參數為判斷是否為分類變量的數值標準,高于此水平的便認為定量變量,也就無需進行自定義值標簽。如果要對定量變量進行區段定義值標簽,可以通過在配置表和輸入控制數據集中增加相應END變量實現,此處不再贅述。

(1)類似%CHANGENAMEANDLABEL,首先生成局部宏變量LIB和DATASET分別存放用戶指定的DEFINEVARFORMATI參數通過截取獲得的邏輯庫和數據集名稱。利用LIB和DATASET通過SQL數據字典取得目標數據集變量名稱、標簽、長度、類型、格式五個變量儲存至數據集。為了程序運行高效簡潔,在上述生成數據集中生成新變量VALUELIST,使下一步中讀取變量取值并更新至數據集。

(2)讀取每個變量全部取值,用分隔符分隔并更新至數據集。

/*讀取數據集中所有變量名儲存在varnamelist宏變量中,計算變量數記如宏變量varno中以便下一步建立循環*/

(3)在數據步中拆分取值并生成變量自定義格式的excel參數表,并完成參數配置,見表6(選取部分變量)。

表6 變量自定義格式修改、生成、補充參數表

讀取參數表,生成自定義格式并用自定義格式驅動變量,最終結果見表7。

(1)生成程序控制參數LOGIC,如果LOGIC=1則利用原有自定義格式并生成其輸出控制數據集_TEMPFORMATDATA。

(2)讀取由分析人員定制的excel參數表,并完成關鍵變量的整理使其符合輸入控制數據集格式保存為_TEMPVALUEDATA。在此過程中完成格式命名,命名規則為:變量名+FORM。并利用ID變量標記需要格式驅動變量,并將所有需要驅動的變量名存儲在宏變量OUTNEEDFMTVARNAME中。

(3)依據控制參數LOGIC完成是否合并_TEMPVALUEDATA和_TEMPFORMATDATA。為了方便說明列舉LOGIC=1時程序如下:

/*生成判斷變量,并依據判斷變量完成已存在自定義格式的修改*/

/*合并用戶指定的excel的自定義格式及邏輯庫本身自帶的自定義格式信息,完成修改,添加,補充*/

(4)依據輸入控制數據集生成自定義格式,并依據宏變量OUTNEEDFMTVARNAME完成自定義格式與變量的關聯,結果見表7。

表7 通過標準化入口程序的數據

討 論

本研究設計的程序具有自動化和標準化的特點,雖以Epidata數據庫為例,但貫穿其中的基本思想及其實現過程、編程方法均建立在SAS數據集的層面,所以具有通用性,適用于各類數據管理軟件如 excel、CSPRO等,較好地解決了SAS與數據管理軟件的接口問題,在自動化分析報告程序的開發和應用中也有著重要意義。但值得注意的是,良好的數據結構不僅能提高工作效率,還能保證數據分析的準確性和統計報表的規范性。因此,事先良好的調查表設計是至關重要的一環,某些條件下甚至是其他環節無法彌補的,但在現實工作中往往被忽視。在程序的編寫過程中筆者總結了幾個需要注意的問題,現分述如下:

1.程序設計和修改時,應注意更新變量名與更新變量標簽的語句順序。更新變量標簽的語句應在前,以防先更新變量名稱后,更新變量標簽時無法找到原變量名而報錯。將整個過程分為變量名、標簽的操作和自定義格式的操作也出于上述考慮。

2.在程序中大量使用了利用分隔符分隔儲存多個參數的單個宏變量,在兩個這樣的宏變量進行對接時應注意單元間的對應關系,尤其注意首個是分隔符或者因為掃描到空值而產生的兩個連續分隔符,常常使SCAN函數無法掃描到正確單元。

3.利用SQL查詢得到的是變量的輸出格式值,而并非數據真值,所以在構建excel參數表時變量格式信息是必須的,在進行參數設置時應綜合考慮。

4.在輸出控制數據集與分析人員定義的格式數據集合并過程中,常常會存在矛盾觀測。而且分別來源于已存在自定義格式的輸出控制數據集和分析人員自定義的格式數據集,這部分觀測有相同的起始值、類型和格式名。由于分析人員欲通過其定制的自定義格式數據集中觀測替換自定義格式輸出數據集的觀測來達到自定義格式某特定值標簽修改的目的,因此就需要對來源進行識別,刪除輸出控制數據集中的矛盾觀測,保留分析人員自定義的部分。

5.在關聯變量與自定義格式時,利用了自定義變量輸出格式的命名規則(變量名+form.),方便有效地達成了目的。

6.在利用SQL中SELECT語句DISTINCT關鍵詞進行取值時,查詢結果會自動排序,所以缺失值都在第一位。

1.胡靜.EpiData軟件的特點及使用簡介.疾病監測,2006(5):273-275.

2.Sas Institute Inc.Sas 9.1.3 Help and Documentation.Cary Nc:Sas Institute Inc,2003.

3.Sas Institute Inc.Sas Institute Inc.Sas9.1.3 Sql Procedure Users Guide.Cary,Nc,2006.

4.Sas Institute Inc.Sas Institute Inc.Base Sas9.1.3 Procedures Guide:Statistical Procedures.Cary,Nc,2006.

主站蜘蛛池模板: 四虎精品国产AV二区| jizz国产视频| 亚洲一区国色天香| 欧美特黄一级大黄录像| 国产chinese男男gay视频网| 尤物成AV人片在线观看| 日韩人妻无码制服丝袜视频| 老汉色老汉首页a亚洲| 欧美日韩国产系列在线观看| 中文字幕无码制服中字| swag国产精品| 欧美伦理一区| 国产精品人成在线播放| 久久九九热视频| 国产欧美中文字幕| 国产福利影院在线观看| 国产情侣一区二区三区| 麻豆国产精品| 激情国产精品一区| 人妻精品久久无码区| 国产精品天干天干在线观看| 国产特级毛片| 久久永久精品免费视频| 国产剧情国内精品原创| 手机精品福利在线观看| 欧美一区日韩一区中文字幕页| 精品国产成人三级在线观看| 欧美区一区二区三| 爱色欧美亚洲综合图区| 国产99视频免费精品是看6| 亚洲欧美国产五月天综合| 亚洲国产看片基地久久1024| 日韩东京热无码人妻| 国产jizz| 成年片色大黄全免费网站久久| 老司机精品99在线播放| 亚洲高清无码精品| 久久毛片网| 欧美视频免费一区二区三区| 午夜无码一区二区三区| 无码av免费不卡在线观看| 国产亚洲视频在线观看| 国产在线自乱拍播放| 亚洲日本一本dvd高清| 国产成人h在线观看网站站| 欧美精品成人| 亚洲美女久久| 97国产一区二区精品久久呦| 欧美三级日韩三级| 一本无码在线观看| 色综合激情网| 久久婷婷六月| 亚洲色图另类| 手机精品福利在线观看| 亚洲资源站av无码网址| 美女国内精品自产拍在线播放| 97久久免费视频| 日韩欧美色综合| 日韩欧美高清视频| 国产喷水视频| 51国产偷自视频区视频手机观看| 亚洲精品成人福利在线电影| 国产欧美性爱网| 日本国产在线| 福利一区三区| 欧美日韩在线第一页| 美女亚洲一区| 天天色天天综合| 四虎影视国产精品| 啪啪永久免费av| 91成人在线免费观看| 色综合中文字幕| 久久精品国产电影| 日本免费a视频| 亚洲国产91人成在线| 精品国产免费观看一区| 大陆国产精品视频| 久久久噜噜噜| 九九九精品成人免费视频7| 无码啪啪精品天堂浪潮av| 在线欧美a| a天堂视频在线|