五月天婷亚洲天久久综合网,婷婷丁香五月激情亚洲综合,久久男人精品女人,麻豆91在线播放

  • <center id="8gusu"></center><rt id="8gusu"></rt>
    <menu id="8gusu"><small id="8gusu"></small></menu>
  • <dd id="8gusu"><s id="8gusu"></s></dd>
    樓主: dxystata
    3534 10

    [問答] 找出小數(shù)點(diǎn)位數(shù) [推廣有獎(jiǎng)]

    • 48關(guān)注
    • 粉絲

    版主

    大師

    37%

    還不是VIP/貴賓

    -

    TA的文庫  其他...

    Software

    中英文Ebook

    R學(xué)習(xí)

    威望
    2
    論壇幣
    183930 個(gè)
    通用積分
    15267.1647
    學(xué)術(shù)水平
    208 點(diǎn)
    熱心指數(shù)
    271 點(diǎn)
    信用等級
    174 點(diǎn)
    經(jīng)驗(yàn)
    297820 點(diǎn)
    帖子
    5574
    精華
    1
    在線時(shí)間
    13609 小時(shí)
    注冊時(shí)間
    2006-6-21
    最后登錄
    2024-12-13

    初級學(xué)術(shù)勛章 初級熱心勛章 中級熱心勛章 初級信用勛章

    樓主
    dxystata 發(fā)表于 2019-3-19 07:15:49 |只看作者 |壇友微信交流群|倒序 |AI寫論文
    15論壇幣
    1. data aaa;
    2. input x;
    3. cards;
    4. 1
    5. 1.1
    6. 2.22
    7. 3.1415
    8. 13.141
    9. 110.1
    10. ;
    11. run;
    復(fù)制代碼

    先根據(jù)程序自動得到數(shù)據(jù)集aaa中x的小數(shù)點(diǎn)位數(shù),結(jié)果是4,再將其放入宏變量。
    程序如何實(shí)現(xiàn)?

    最佳答案

    l1i2n3i4n5g 查看完整內(nèi)容

    proc sql; select max(length(scan(put(x,best12.),2))) into : result from aaa; quit;
    關(guān)鍵詞:小數(shù)點(diǎn) cards Input card 如何實(shí)現(xiàn)
    沙發(fā)
    l1i2n3i4n5g 在職認(rèn)證  發(fā)表于 2019-3-19 07:15:50 |只看作者 |壇友微信交流群
    proc sql;
       select max(length(scan(put(x,best12.),2))) into : result
       from aaa;
    quit;
    已有 2 人評分經(jīng)驗(yàn) 論壇幣 學(xué)術(shù)水平 熱心指數(shù) 信用等級 收起 理由
    admin_kefu + 10 + 2 + 2 + 2 熱心幫助其他會員
    dxystata + 100 + 1 + 1 熱心幫助其他會員

    總評分: 經(jīng)驗(yàn) + 100  論壇幣 + 10  學(xué)術(shù)水平 + 3  熱心指數(shù) + 3  信用等級 + 2   查看全部評分

    藤椅
    zy_4613 發(fā)表于 2019-3-19 08:40:05 |只看作者 |壇友微信交流群
    data aaa;
    input x;
    cards;
    1
    1.1
    2.22
    3.1415
    13.141
    110.1
    ;
    run;
    data bbb;
            set aaa;
            y=int(x);
            if x=y then z=0;
            else z=sum(length(compress(int(x))),1);
    run;
    得到小數(shù)點(diǎn)的位置,但是不太明白,放入宏變量是什么意思。
    data _null_;
            set bbb;
            call execute('%test('||z||')');
    run;
    是需要這樣嗎?
    已有 2 人評分經(jīng)驗(yàn) 論壇幣 學(xué)術(shù)水平 熱心指數(shù) 信用等級 收起 理由
    admin_kefu + 20 + 2 + 2 + 2 熱心幫助其他會員
    dxystata + 100 + 1 + 1 熱心幫助其他會員

    總評分: 經(jīng)驗(yàn) + 100  論壇幣 + 20  學(xué)術(shù)水平 + 3  熱心指數(shù) + 3  信用等級 + 2   查看全部評分

    板凳
    dxystata 發(fā)表于 2019-3-19 08:51:55 |只看作者 |壇友微信交流群
    zy_4613 發(fā)表于 2019-3-19 08:40
    data aaa;
    input x;
    cards;
    我希望找出變量取值中小數(shù)點(diǎn)位數(shù)最多的位數(shù)是多少
    報(bào)紙
    zy_4613 發(fā)表于 2019-3-19 09:08:56 |只看作者 |壇友微信交流群
    dxystata 發(fā)表于 2019-3-19 08:51
    我希望找出變量取值中小數(shù)點(diǎn)位數(shù)最多的位數(shù)是多少
    data aaa;
    input x;
    cards;
    1
    1.1
    2.22
    3.1415
    13.141
    110.1
    ;
    run;
    data bbb;
            set aaa;
            y=sum(x,-int(x));
            z=sum(length(compress(y)),-2);
    run;
    proc sql;
            select max(z) into: macro_name from bbb;
    quit;
    第一次弄錯(cuò)了
    地板
    xiaopingN 發(fā)表于 2019-3-19 10:16:19 |只看作者 |壇友微信交流群
    l1i2n3i4n5g 發(fā)表于 2019-3-19 09:33
    proc sql;
       select max(length(scan(put(x,best12.),2))) into : result
       from aaa;
    proc sql;
       select max(length(scan(x,2, "."))) into : result
       from aaa;
    quit;
    反正SAS會在數(shù)字和字符自動轉(zhuǎn)換
    已有 1 人評分經(jīng)驗(yàn) 學(xué)術(shù)水平 熱心指數(shù) 收起 理由
    dxystata + 100 + 1 + 1 熱心幫助其他會員

    總評分: 經(jīng)驗(yàn) + 100  學(xué)術(shù)水平 + 1  熱心指數(shù) + 1   查看全部評分

    7
    xiaopingN 發(fā)表于 2019-3-19 21:52:33 |只看作者 |壇友微信交流群
    看來還沒達(dá)到樓主要求。再努力一下:
    Data bbb;
    set aaa;y=scan(x,2, ".");
    if y=" " then decimal=0;
    else decimal=length(scan(x,2, "."));
    drop y;
    run;
    Decimal 就是數(shù)據(jù)aaa 中變量x的小數(shù)點(diǎn)位數(shù)。


    Proc sql ;
    select max(decimal) into :MaxDecimal
    from bbb;
    quit;
    %put the maximum decimal is %left(&MaxDecimal);


    最后用%put 把宏變量MaxDecimal的值寫到SAS log:

    the maximum decimal is 4

    已有 2 人評分經(jīng)驗(yàn) 論壇幣 學(xué)術(shù)水平 熱心指數(shù) 信用等級 收起 理由
    admin_kefu + 20 + 2 + 2 + 2 熱心幫助其他會員
    dxystata + 100 + 1 + 1 熱心幫助其他會員

    總評分: 經(jīng)驗(yàn) + 100  論壇幣 + 20  學(xué)術(shù)水平 + 3  熱心指數(shù) + 3  信用等級 + 2   查看全部評分

    8
    dxystata 發(fā)表于 2019-3-20 06:52:43 |只看作者 |壇友微信交流群
    謝謝各位!
    9
    撻撻 發(fā)表于 2019-3-20 16:20:38 |只看作者 |壇友微信交流群
    data aaa;
            set aaa;
            num=length(strip(x))-length(strip(scan(x,1,".")))-1;
            if num<0 then num=0;
    run;
    proc sql noprint;
            select max(num) into:num from aaa;
    quit;
    %put &num.;
    已有 1 人評分經(jīng)驗(yàn) 學(xué)術(shù)水平 熱心指數(shù) 收起 理由
    dxystata + 100 + 1 + 1 好的意見建議

    總評分: 經(jīng)驗(yàn) + 100  學(xué)術(shù)水平 + 1  熱心指數(shù) + 1   查看全部評分

    10
    dxystata 發(fā)表于 2019-4-11 21:26:11 |只看作者 |壇友微信交流群
    l1i2n3i4n5g 發(fā)表于 2019-3-19 07:15
    proc sql;
       select max(length(scan(put(x,best12.),2))) into : result
       from aaa;
    data aaa;
    input x;
    cards;
    11
    111
    ;
    run;
    dec的結(jié)果應(yīng)該是0,結(jié)果出錯(cuò)哦!
    您需要登錄后才可以回帖 登錄 | 我要注冊

    本版微信群
    加好友,備注cda
    拉您進(jìn)交流群

    京ICP備16021002-2號 京B2-20170662號 京公網(wǎng)安備 11010802022788號 論壇法律顧問:王進(jìn)律師 知識產(chǎn)權(quán)保護(hù)聲明   免責(zé)及隱私聲明

    GMT+8, 2024-12-23 17:58