在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SAS:?數據集的橫向合并(一)

冬至子 ? 來源:小高的SAS學習筆記 ? 作者:小高筆記 ? 2023-05-19 10:44 ? 次閱讀

一、一對一合并數據集

1.具有不同變量的數據集

在橫向合并中,當兩個或更多的SAS數據集沒有相同的變量時,此時合并數據集的變量均會展示在數據集中。

data one;

input week $10.;

cards;

Week1

Week2

Week3

Week4

Week5

;

run;

/ 結果如下: /

圖片

data two;

input topic $10.;

cards;

Topic 1

Topic 2

Topic 3

Topic 4

Topic 5

;

run;

/ 結果如下: /

圖片

data all1;

merge one two;

run;

/ 結果如下: /

圖片

2.具有相同變量的數據集(不使用by語句)

當兩個或更多的SAS數據集有相同的變量時,第 2 個數據集中的變量將覆蓋第 1 個數據集中的相同變量。如果不想要被覆蓋,則可以使用RENAME數據步驟選項來重新命名。

data three;

input ID $3. balance 4.;

cards;

001 102

005 89

002 231

004 147

003 192

;

run;

/ 結果如下: /

圖片

data four;

input Name $ 1-15 @17 balance 4.;

cards;

John Smith 96

Ted Husion 80

Martha Chen 150

Sandy Lee 100

Paul Leny 192

Avery 200

;

run;

/ 結果如下: /

圖片

data all2;

merge three four;

run;

/ 結果如下: /

圖片

**3.具有相同變量的數據集(使用by語句) **

與by語句的合并允許根據by變量的值來匹配觀測值。在合并之前,所有的輸入數據集必須按照BY或KEY變量進行排序。

data five;

input ID $3. balance 4. zip 6.;

cards;

001 102 16431

005 89 46298

002 231 98704

004 147 42316

003 192 44765

007 479 21496

;

run;

proc sort data=five;

by id;

run;

/ 結果如下: /

圖片

data six;

input Name $ 1-15 @17 balance 4. @23 ID $3.;

cards;

Sandy Lee 100 004

Paul Leny 192 003

John Smith 96 001

Ted Husion 80 005

Martha Chen 150 002

Jason Tod 244 006

;

run;

proc sort data=six;

by id;

run;

/ 結果如下: /

圖片

data all3;

merge five six;

by id;

run;

/ 結果如下: /

圖片

4.具有相同變量的數據集(使用by語句和in選項)

在上面的例子中,觀察值6和7來自兩個數據集中的一個。IN=選項創建了一個變量,可以識別數據集是否對輸出有貢獻。舉以下三個例子來讓大家理解:

例1:在上面的例子中,我們添加了另一個變量 "source",并使用IN=選項來識別每個輸入數據集的貢獻:

data all4;

length source $8;

merge five(in=in1) six(in=in2);

by id;

if in1 and in2 then source='Both';

else if in1 then source='Left';

else source='Right';

run;

/ 結果如下: /

圖片

例2:在上面的例子中,如果我們希望輸出的數據集只包含來自兩個輸入數據集的觀察值:

data all5;

merge five(in=in1) six(in=in2);

by id;

if in1 and in2 ;

run;

/ 結果如下: /

圖片

例3:我們希望輸出的數據集包含所有來自five輸入數據集的觀測值:

data all6;

merge five(in=in1) six(in=in2);

by id;

if in1 ;

run;

/ 結果如下: /

圖片

注意:如果匹配合并的目的是一對一的匹配合并,輸入的數據集應該沒有重復的鍵。因此,在合并之前,可能需要在合并前對proc sort使用NODUPKEY選項。

二、一對多或多對一合并數據集

BY變量值在某一輸入數據集中存在重復值,即在其中一個輸入數據集中,含有兩條或兩條以上的觀測具有相同的BY變量值,也稱為一對多合并。

在匹配過程中會遵循如下原則:由輸入數據集讀入的變量值,會保留在PDV中,直到被下一個讀入的觀測值覆蓋或該BY組合處理完畢被重置為缺失值為止。為了更好的理解,通過一個簡單的例子來具體講解這一原則。

data seven;

input ID $3. zip 6.;

cards;

001 16431

005 46298

002 98704

004 42316

003 44765

007 21496

;

run;

proc sort data=seven out=seven;

by id;

run;

/ 結果如下: /

圖片

data eight;

input Name $ 1-15 @17 balance 4. @23 ID $3.;

cards;

Sandy Lee 100 004

Paul Leny 192 003

John Smith 96 001

Ted Husion 80 005

Martha Chen 150 002

Jason Tod 244 006

Avery 200 001

;

run;

proc sort data=eight out=eight;

by id;

run;

/ 結果如下: /

圖片

data all7;

merge seven eight;

by id;

run;

/ 結果如下: /

圖片

三、多對多合并數據集

雖然在匹配合并時,一般情況下BY變量值至多在某一個數據集中有重復,但并不代表匹配合并只能處理這一種情況,它同樣可以處理兩個或兩個以上輸入數據集中的BY變量值重復的情況,也就是實現多對多合并。

SAS的匹配原則和一對多合并時一樣,并且新數據集中每一個BY變量值重復的次數和輸入數據集中重復次數最多的一樣。

data nine;

input id$3. number;

cards;

001 2

001 3

002 2

002 4

;

run;

proc sort data=nine out=nine;

by id;

run;

/ 結果如下: /

圖片

data ten;

input id$3. balance;

cards;

001 100

001 192

002 150

002 200

003 136

;

run;

proc sort data=ten out=ten;

by id;

run;

/ 結果如下: /

圖片

data all8;

merge nine ten;

by id;

run;

/ 結果如下: /

圖片

在上例中,all8數據集中有一部分id號的number信息,如果不想將這些id的信息包含在新生成的數據集中,就需要確定數據集使用數據集選項IN=可以幫助實現這一功能。

data all9;

merge nine(in=in1) ten(in=in2);

by id;

if in1;

run;

/ 結果如下: /

圖片

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • SAS
    SAS
    +關注

    關注

    2

    文章

    524

    瀏覽量

    32958
  • 數據集
    +關注

    關注

    4

    文章

    1209

    瀏覽量

    24850
收藏 人收藏

    評論

    相關推薦

    SAS走進企業級存儲應用

    。 從并行到串行SCSI的轉變為用戶提供了種更 新的路線圖,根據SCSI商業協會(STA)的計劃,將及時地從目前的3Gb/s發展到12Gb/s。SAS技術規范也準許在同應用中同時使用串行 ATA
    發表于 11-13 21:58

    串行連接SCSI(SAS)技術開辟寬數據路徑

    SAS寬端口的胖數據管道。新出現的RAID控制器和存儲子系統利用了SAS寬端口的帶寬和低成本的優勢。SAS通過在混合SAS和SATA硬盤的
    發表于 11-13 21:59

    SAS分區規范為所有SAS物理結構提供靈活高效的接入控制,其特性包括

    顯著減少開發費用和加快產品上市時間。SMS個主要特性是可以在整個SAS結構接入控制區進行完整配置和管理,此外,SMS通過圖形用戶界面以分級形式顯示SAS結構,便于將正確的分區特性分配給擴展器和終端設備。
    發表于 06-02 09:31

    SAS固態硬盤存儲技術

    、沖擊、腐蝕、高溫、低溫、鹽霧、潮濕等惡劣的作業環境。 速度:ASpec元存工業級SAS固態硬盤是個完全的雙向系統,而SATA則繼承了IDE的特性,是半雙向通信的系統。因此SAS數據
    發表于 06-18 05:00

    SAS硬盤有什么特點?

    SCSI協議由于其深受信賴的可靠性和穩定的功能,20年來直牢牢占據市場。3年前才推出的串行連接SCSI(SAS)延續了對SCSI的創新,具有全新水平的可擴展性、靈活性和經濟有效性,為用戶提供接入、
    發表于 09-24 09:01

    SAS接口的設計

     SAS是新代的SCSI技術,和現在流行的Serial ATA(SATA)硬盤相同,都是采用串行技術以獲得更高的傳輸速度,并通過縮短連結線改善內部空間等。SAS是并行SCSI接口之后開發出的全新
    發表于 09-09 06:26

    數據文件合并

    次練手寫的小工具,可以批量將大量測試數據文件合并個文檔,以便后續處理,奉上源碼,各位可自由發揮。
    發表于 03-04 16:52

    結構粒化的數據合并

    為了研究實際中的數據合并問題,對各類數據信息給予了整體表示,使數據、關聯關系和劃分共同組成了關聯組合結構,為
    發表于 01-17 10:50 ?0次下載

    種大數據的密度統計合并算法

    data sets,簡稱DSML).該算法將數據點的每個特征看作組獨立隨機變量,并根據獨立有限差分不等式獲得統計合并判定準則.首先,使用統計合并判定準則對Leaders算法做出改進
    發表于 01-21 11:45 ?1次下載

    5個必須知道的Pandas數據合并技巧

    concat是pandas中專門用于數據連接合并的函數,功能非常強大,支持縱向合并橫向合并,默認情況下是縱向
    的頭像 發表于 04-13 10:35 ?2383次閱讀

    SAS:數據橫向合并(二)

    前面我們介紹了在data step中用merge的方法可以對數據橫向合并,這節我們來講講在procedure過程步中用proc sql的方法對數據
    的頭像 發表于 05-19 10:47 ?5028次閱讀
    <b class='flag-5'>SAS</b>:<b class='flag-5'>數據</b><b class='flag-5'>集</b>的<b class='flag-5'>橫向</b><b class='flag-5'>合并</b>(二)

    ?SAS數據的input輸入方式

    SAS input輸入方法用于讀取原始數據。原始數據可以來自外部源或來自流數據
    的頭像 發表于 05-19 14:50 ?3032次閱讀
    ?<b class='flag-5'>SAS</b><b class='flag-5'>數據</b><b class='flag-5'>集</b>的input輸入方式

    SAS-3成式磁盤陣列解決方案用戶指南

    電子發燒友網站提供《SAS-3成式磁盤陣列解決方案用戶指南.pdf》資料免費下載
    發表于 08-04 10:20 ?0次下載
    <b class='flag-5'>SAS</b>-3<b class='flag-5'>集</b>成式磁盤陣列解決方案用戶指南

    SAS-2成RAID配置實用程序用戶指南

    電子發燒友網站提供《SAS-2成RAID配置實用程序用戶指南.pdf》資料免費下載
    發表于 08-10 16:25 ?0次下載
    <b class='flag-5'>SAS</b>-2<b class='flag-5'>集</b>成RAID配置實用程序用戶指南

    Yonghong Desktop端Excel 數據的優化

    優化,提升Excel?數據使用體驗。趕快來試試看有沒有你想要的功能吧。 01 Excel?數據支持同時上傳多個文件,多個文件可以“合并
    的頭像 發表于 09-08 11:13 ?558次閱讀
    Yonghong Desktop端Excel <b class='flag-5'>數據</b><b class='flag-5'>集</b>的優化
    主站蜘蛛池模板: 国产在线一卡二卡 | 婷婷99 | 4438x色| 男人天堂综合网 | 性做久久久久久免费观看 | 人人插人人草 | 很很鲁在线视频播放影院 | 狠狠插综合网 | 免费黄色网址网站 | 欧美黑人巨大日本人又爽又色 | 亚洲人成亚洲人成在线观看 | 一级特级aaaa毛片免费观看 | 综合爱 | 欧美日本不卡 | 国内精品伊人久久大香线焦 | 澳门久久精品 | 99热在线获取最新地址 | 国模视频一区二区 | 最近2018中文字幕免费看2019 | 日韩中文字幕第一页 | 黄色片链接 | 精品伊人久久大线蕉色首页 | 天天干天天澡 | 一级一级一片免费高清 | 亚洲一区欧美一区 | 欧美尺寸又黑又粗又长 | 色又色 | 中文字幕欧美成人免费 | 日本成本人三级在线观看2018 | 妹子干综合网 | 午夜不卡影院 | 涩色影院 | 成人www视频| 黄色刺激网站 | 一级做a免费视频 | 久久国产乱子伦精品免费看 | 免费观看欧美一级高清 | 在线观看色视频 | 欧美一级视频精品观看 | 日韩大胆 | 亚洲一区免费观看 |