
利用SAS進行數據清洗技術—缺失值查詢
數據清洗技術是統計分析之前必做的一步,而且也是非常麻煩的一步,有時甚至花費的時間比統計分析都長。所以沒有一定的技巧,這將是個非常煩人的工作。本篇文章介紹如何利用sas進行缺失值的查詢工作。
假定我們有數據集aa,包含如下變量(數據省略):
ID dose gender age t0 t1 a1 a2
最簡單的方式當然就是挨個變量找缺失值,如下:
data missing;
set aa;
if id=. or dose=. or gender=. or age=. or t0=. or t1=. or a1=. or a2=.;
proc print;
run;
這種方式很好理解,就是利用if語句逐個判斷每個變量是否有缺失(注意,如果變量時文本型,不能寫=.,而是=" "),但缺點也是顯而易見的,如果不是現在的8個變量,而是80個變量,那寫一遍估計要累個半死。所以我們用下面的語句節(jié)省體力:
data missing(drop=i);
set aa;
array num{8} id dose gender age t0 t1 a1 a2;
do i=1 to 8;
if num{i}=. then output;
end;
這種方式好像比上面的更復雜了,但效率提高了n倍(取決于你的變量有多少)。這種方式是利用數組判斷缺失值,不管有100個還是1000個變量,對數組來說沒什么區(qū)別,只是數組中變量的個數改變一下而已(如本例中的8)。
當這種方式仍不是最節(jié)省的,因為我們還是需要把這8個變量一一寫出來,那可不可以就不寫變量名呢。當然可以,還有更簡單的方式如下:
data missing(drop=i);
set aa;
array num{*} _all_;
do i=1 to dim(num);
if num{i}=. then output;
end;
當這種方式更簡單了,而且是個通用語句,不管你有10個還是1000個變量,都可以用這種方式來查詢,一個字母都不用改。當然前提是所有變量都是數值型,如果是文本型,那就應該是num{i}=" "。
還有另外一種非常簡潔 的方式是利用函數,如下:
data missing(drop=i);
set aa;
array num{*} _all_;
do i=1 to dim(num);
if missing(num{i}) then output;
end;
用函數的這種方式有什么好處呢?起碼有一點,你不用考慮到底是數值還是文本,全部都是missing(變量)就行了。否則你還得想著數值是.,文本是" "。一不小心忘了容易出問題。
前面所說的都是假定所有變量都是同一種類型的,如果變量中既有數值型,又有文本型,那怎么辦呢?如下程序就很簡單了:
data missing(drop=i);
set aa;
array a _numeric_;
do i=1 to dim(a);
if missing(a) then output;
end;
array b_character_;
do i=1 to dim(b);
if missing(b) then output;
end;
毫不夸張地說,這個簡直就是個缺失值的通用語句,同時遍歷了數據集中的數值型和文本型的所有缺失值。所有的缺失值查找,幾乎都可以這一語句來實現,它幾乎包含了所有的可能情況,還能苛求什么呢?套用就行了。
數據分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
LSTM 模型輸入長度選擇技巧:提升序列建模效能的關鍵? 在循環(huán)神經網絡(RNN)家族中,長短期記憶網絡(LSTM)憑借其解決長序列 ...
2025-07-11CDA 數據分析師報考條件詳解與準備指南? ? 在數據驅動決策的時代浪潮下,CDA 數據分析師認證愈發(fā)受到矚目,成為眾多有志投身數 ...
2025-07-11數據透視表中兩列相乘合計的實用指南? 在數據分析的日常工作中,數據透視表憑借其強大的數據匯總和分析功能,成為了 Excel 用戶 ...
2025-07-11尊敬的考生: 您好! 我們誠摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實施重大更新。 此次更新旨在確保認 ...
2025-07-10BI 大數據分析師:連接數據與業(yè)務的價值轉化者? ? 在大數據與商業(yè)智能(Business Intelligence,簡稱 BI)深度融合的時代,BI ...
2025-07-10SQL 在預測分析中的應用:從數據查詢到趨勢預判? ? 在數據驅動決策的時代,預測分析作為挖掘數據潛在價值的核心手段,正被廣泛 ...
2025-07-10數據查詢結束后:分析師的收尾工作與價值深化? ? 在數據分析的全流程中,“query end”(查詢結束)并非工作的終點,而是將數 ...
2025-07-10CDA 數據分析師考試:從報考到取證的全攻略? 在數字經濟蓬勃發(fā)展的今天,數據分析師已成為各行業(yè)爭搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢性檢驗:捕捉數據背后的時間軌跡? 在數據分析的版圖中,單樣本趨勢性檢驗如同一位耐心的偵探,專注于從單 ...
2025-07-09year_month數據類型:時間維度的精準切片? ? 在數據的世界里,時間是最不可或缺的維度之一,而year_month數據類型就像一把精準 ...
2025-07-09CDA 備考干貨:Python 在數據分析中的核心應用與實戰(zhàn)技巧? ? 在 CDA 數據分析師認證考試中,Python 作為數據處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗:數據趨勢與突變分析的有力工具? ? ? 在數據分析的廣袤領域中,準確捕捉數據的趨勢變化以及識別 ...
2025-07-08備戰(zhàn) CDA 數據分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數據分析師認證作為國內權威的數據分析能力認證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應對策略? 長短期記憶網絡(LSTM)作為循環(huán)神經網絡(RNN)的一種變體,憑借獨特的門控機制,在 ...
2025-07-07統計學方法在市場調研數據中的深度應用? 市場調研是企業(yè)洞察市場動態(tài)、了解消費者需求的重要途徑,而統計學方法則是市場調研數 ...
2025-07-07CDA數據分析師證書考試全攻略? 在數字化浪潮席卷全球的當下,數據已成為企業(yè)決策、行業(yè)發(fā)展的核心驅動力,數據分析師也因此成為 ...
2025-07-07剖析 CDA 數據分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數據分析師考試作為衡量數據專業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉日期:解鎖數據處理的關鍵技能? 在數據處理與分析工作中,數據格式的規(guī)范性是保證后續(xù)分析準確性的基礎 ...
2025-07-04CDA 數據分析師視角:從數據迷霧中探尋商業(yè)真相? 在數字化浪潮席卷全球的今天,數據已成為企業(yè)決策的核心驅動力,CDA(Certifie ...
2025-07-04CDA 數據分析師:開啟數據職業(yè)發(fā)展新征程? ? 在數據成為核心生產要素的今天,數據分析師的職業(yè)價值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03