91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SAS:Data step中first和last變量的應(yīng)用場景

冬至子 ? 來源:小高的SAS學(xué)習(xí)筆記 ? 作者:小高筆記 ? 2023-05-19 14:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

SAS的data步中,可以使用by分組,在處理過程中會(huì)產(chǎn)生兩個(gè)臨時(shí)變量first.variable和last.variable,這兩個(gè)臨時(shí)變量的值不會(huì)寫到結(jié)果中,這兩個(gè)臨時(shí)變量的賦值情況如下:

由于data step是按行處理每一條觀測的,當(dāng)一條觀測為某一組的第一條記錄時(shí),那么first.variable就為1,否則為0;當(dāng)一條觀測為某一組的最后一條記錄時(shí),那么last.variable就為1,否則為0;如果某一組中只有一條觀測,那么first.avriable=last.variable都為1.因此,可以使用這兩個(gè)變量來篩選每一組中的第一條或最后一條觀測。以下示例演示如何在SAS中使用first & last

考慮這樣一種場景:假設(shè)有某校一學(xué)期內(nèi)組織籃球比賽的數(shù)據(jù),如下所示,每一條觀測對應(yīng)一個(gè)team的一次比賽記錄,我們知道一個(gè)team在一學(xué)期內(nèi)可能會(huì)進(jìn)行多次比賽。

例1:找到每個(gè) team得分最高和最低分別對應(yīng)的進(jìn)球數(shù)

data test;

input team $ points rebounds;

  datalines;

Mavs 29 10

Mavs 13 6

Mavs 22 5

Mavs 20 9

Spurs 13 9

Spurs 15 10

Spurs 33 8

Spurs 27 11

Rockets 25 8

Rockets 14 4

Rockets 16 7

Rockets 12 4

LLC 15 9

;

run;

第一步:先按team和points排序

proc sort data=test out=sort_test;

by team points;

run;

圖片

第二步:創(chuàng)建臨時(shí)變量first和last

data test1;

set sort_test;

by team points;

first=first.team;

  last=last.team;

  if first.team or last.team then output;

run;

結(jié)果如下:

圖片

由上圖可以看到,first變量為1表示該team得分最低所進(jìn)的球的數(shù)量,last變量為1表示該team得分最高所進(jìn)的球的數(shù)量。我們發(fā)現(xiàn),對于第一個(gè)team LLC,它的first.和last都為1,說明這個(gè)team只進(jìn)行過一次比賽。這里需要注意的是,對于by語句后面的每一個(gè)變量,都會(huì)有一個(gè)對應(yīng)的first和last臨時(shí)變量,并且這些臨時(shí)變量都不會(huì)出現(xiàn)在數(shù)據(jù)集中。

例2:計(jì)算每個(gè) team進(jìn)行比賽的次數(shù)

第一步:先按team排序

proc sort data=test out=sort_test;

by team;

run;

第二步:創(chuàng)建臨時(shí)變量first和last

data test1;

set sort_test;

  by team;



  if first.team then

        number = 0;

  number + 1;

  if last.team then output;

run;

結(jié)果如下:

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • LLC
    LLC
    +關(guān)注

    關(guān)注

    38

    文章

    628

    瀏覽量

    80711
  • SAS
    SAS
    +關(guān)注

    關(guān)注

    2

    文章

    524

    瀏覽量

    34105
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    AG32VF-MIPI應(yīng)用場景

    MIPI接口技術(shù)在圖像和視頻傳輸的應(yīng)用越來越廣泛,應(yīng)用場景也在不斷拓展,而不僅限于移動(dòng)設(shè)備。MIPI接口在物聯(lián)網(wǎng)、智能家居、智能監(jiān)控、智能電視、智能汽車等領(lǐng)域也得到廣泛應(yīng)用。 MIPI還可
    發(fā)表于 01-22 08:56

    實(shí)時(shí)示波器的技術(shù)原理和應(yīng)用場景

    實(shí)時(shí)示波器是一種高性能的電子測量儀器,其技術(shù)原理和應(yīng)用場景對于電子工程和通信技術(shù)領(lǐng)域具有重要意義。以下是對實(shí)時(shí)示波器的技術(shù)原理和應(yīng)用場景的詳細(xì)解釋:一、技術(shù)原理實(shí)時(shí)示波器的工作原理基于電子束在熒光屏
    發(fā)表于 10-23 14:22

    敏捷合成器的技術(shù)原理和應(yīng)用場景

    ,在多個(gè)領(lǐng)域具有廣泛的應(yīng)用場景: 通信測試:在通信設(shè)備的研發(fā)和生產(chǎn)過程,敏捷合成器可用于生成各種調(diào)制信號(hào)和測試信號(hào),以驗(yàn)證設(shè)備的性能和穩(wěn)定性。 雷達(dá)系統(tǒng):雷達(dá)系統(tǒng)需要高精度和高穩(wěn)定性的信號(hào)源來生成雷達(dá)
    發(fā)表于 02-20 15:25

    Switch的應(yīng)用場景

    Switch的應(yīng)用場景如下: 調(diào)用一到多個(gè)函數(shù) 設(shè)置變量值或者返回一個(gè)值 執(zhí)行一到多個(gè)代碼片段 如果case標(biāo)簽很多,在switch的前兩個(gè)使用場景,使用查找表可以更高效的完成。例
    發(fā)表于 12-12 07:28

    MOS管的應(yīng)用場景

    mos管的應(yīng)用場景,你了解么?低壓MOS管可稱為金屬氧化物半導(dǎo)體場效應(yīng)管,因?yàn)榈蛪篗OS管具有良好的開關(guān)特性,廣泛應(yīng)用在電子開關(guān)的電路。如開關(guān)電源,電動(dòng)馬達(dá)、照明調(diào)光等!下面銀聯(lián)寶科技就跟大家一起
    發(fā)表于 11-14 09:24

    E4360 SAS瞬態(tài)部分不響應(yīng)某些SCPI命令

    子系統(tǒng)置于連續(xù)啟動(dòng)模式但它沒有。命令LIST:TERM:LAST 1,(@ 1)假設(shè)SAS保持在列表末尾的最后一個(gè)瞬態(tài)步驟。但事實(shí)并非如此。 E4360 SAS Firmware愿景A.01.07忽略了
    發(fā)表于 01-16 09:13

    this的使用場景及與C,Java的this的區(qū)別

    【JS】this有哪些使用場景?跟C,Java的this有什么區(qū)別?如何改變this的值?
    發(fā)表于 03-11 10:17

    PCIExpress SATA和SAS設(shè)計(jì)驗(yàn)證的簡化

    Simplify the validation of your PCI Express?, SATA and SAS designs with the first full-capability protocol viewer built into a digital o
    發(fā)表于 11-05 14:07

    =>的使用場景有哪些

    使用場景
    發(fā)表于 10-27 13:25

    eMBB的CP-OFMD調(diào)制波形的應(yīng)用場景

    5G新的無線電接口:eMBB的CP-OFMD調(diào)制波形的應(yīng)用場景
    發(fā)表于 01-04 07:11

    volatile關(guān)鍵字應(yīng)用場景及示例

    volatile關(guān)鍵字1.應(yīng)用場景2.示例1.應(yīng)用場景volatile關(guān)鍵字分析,往往應(yīng)用在三種場合1)多線程編程共享全局變量的時(shí)候,該全局變量要加上volatile進(jìn)行修飾,讓編譯器
    發(fā)表于 08-24 07:21

    消息隊(duì)列的5個(gè)常見應(yīng)用場景

    消息隊(duì)列的5個(gè)常見應(yīng)用場景https://segmentfault.com/a/1190000017130224想要在單片機(jī)開發(fā)應(yīng)用消息隊(duì)列處理事件主要是為了解耦,減少模塊與模塊之間的耦合??催^挺
    發(fā)表于 11-22 06:22

    MS9331的應(yīng)用場景是什么?

    MS9331的應(yīng)用場景是什么?
    發(fā)表于 02-11 06:41

    請教一下編譯報(bào)錯(cuò)no section to be FIRST/LAST是什么原因呢?

    - no section to be FIRST/LAST. 是什么原因呢?編譯環(huán)境:MDK5
    發(fā)表于 10-20 10:50

    JAVA的堆和棧介紹和內(nèi)存機(jī)制堆和棧的區(qū)別及變量在內(nèi)存的分配

    斷點(diǎn)和現(xiàn)場。要點(diǎn):堆,隊(duì)列優(yōu)先,先進(jìn)先出(FIFO—first in first out)。棧,先進(jìn)后出(FILO—First-In/Last-Out)。
    發(fā)表于 05-09 18:15 ?2次下載
    JAVA的堆和棧介紹和內(nèi)存機(jī)制<b class='flag-5'>中</b>堆和棧的區(qū)別及<b class='flag-5'>變量</b>在內(nèi)存<b class='flag-5'>中</b>的分配