99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀SAS中數(shù)據(jù)集的合并
SAS中數(shù)據(jù)集的合并
2016-09-10
收藏

SAS中數(shù)據(jù)集的合并

數(shù)據(jù)集的合并分為兩種情形:第一種是縱向合并,即把具有相同變量的數(shù)據(jù)集合并起來;另一種是橫向合并,把記錄數(shù)目相同的數(shù)據(jù)集合并起來。


1 縱向合并
縱向合并的方法很簡單,就是使用SET 語句將幾個數(shù)據(jù)集的內(nèi)容復(fù)制到一個數(shù)據(jù)集中就可以了。
例1 上一次曾經(jīng)把score 數(shù)據(jù)集按照性別拆分到兩個數(shù)據(jù)集scorem 和scoref,這兩數(shù)據(jù)集具有完全相同的變量所以滿足縱向合并的要求現(xiàn)在重新將它們合并程序如下
data combine;
set scorem scoref;
run;
proc print;
run;
輸出數(shù)據(jù)集combine
Obs name sex math chinese english
1 Tom m 95 87 84
2 Mike m 80 85 80
3 Fred m 84 85 89
4 Alex m 92 90 91
5 Cook m 75 78 76
6 Butt m 77 81 79
7 Geoge m 86 85 82
8 Tod m 89 84 84
9 Alice f 90 85 91
10 Jenny f 93 90 83
11 Kate f 97 83 82
12 Bennie f 82 79 84
13 Hellen f 85 74 84
14 Wincelet f 90 82 87
15 Christian f 89 84 87
16 Janet f 86 65 67
可以看到,在新的數(shù)據(jù)集中原數(shù)據(jù)集score 中的每一條記錄都可以找到,惟一不同的是記錄的順序發(fā)生了,變化所有男生的記錄都放在前面女生的記錄放在后面,這是因為在復(fù)制的過程中將scorem 數(shù)據(jù)集放在scoref 數(shù)據(jù)集的前面
2 橫向合并
橫向合并要求數(shù)據(jù)集必須具有相同的記錄數(shù)目,一般是同一觀測的不同變量橫向合并使用MERGE語句

例2 可以把原有的記錄所有學(xué)生成績的score 數(shù)據(jù)集拆分為三個數(shù)據(jù)集。第一個數(shù)據(jù)集包括姓名性別數(shù)學(xué)成績,第二個數(shù)據(jù)集包括語文成績,第三個數(shù)據(jù)集只包括英語成績,這樣這三個數(shù)據(jù)集就完全符合橫向合并的條件
先將數(shù)據(jù)集score 拆分開來
data scorea;
set sasuser.score;
keep name sex math;
run;
data scoreb;
set sasuser.score;
keep chinese;
run;
data scorec;
set sasuser.score;
keep english;
run;
這樣就有了三個數(shù)據(jù)集現(xiàn)在運用MERGE 語句將它們重新合并在一起
data combine;
merge scorea scoreb scorec;
run;
proc print;
run;
可以從輸出結(jié)果中看到,橫向合并生成的數(shù)據(jù)集與原有的score 數(shù)據(jù)集完全相同,有些時候在幾個數(shù)據(jù)集中觀測的順序可能被打亂這時就必須先排序再合并。


數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時表示是新驗證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }