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

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

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

SAS:字符型變量的兩種排序方式

冬至子 ? 來源:小高的SAS學(xué)習(xí)筆記 ? 作者:xiao'gao ? 2023-05-19 10:41 ? 次閱讀

(1)字符型變量按照拼音首字母排序

在做AE一類的table時(shí),經(jīng)常會(huì)有要求,需要我們先按照例次降序排序,如果例次相同按照SOC拼音首字母排序,例次降序排好理解,但是怎樣才能實(shí)現(xiàn)對(duì)字符型變量按照拼音排序呢?用一個(gè)例子來讓大家理解:

/ 測(cè)試數(shù)據(jù)集 /

data test;

set order;

count_c=put(count,best.);

run;

/ 結(jié)果如下: /

圖片

通常我們?cè)谔幚泶祟悊栴}時(shí)會(huì)想到用proc sort來對(duì)其進(jìn)行排序

proc sort data=test out =test1 ;

by descending count soc;

run;

/ 結(jié)果如下: /

圖片

紅框部分“肝膽系統(tǒng)疾病”的例次為2,排在“各種先天性家族性遺傳性疾病”的前面似乎沒什么問題,但是接下來的兩個(gè)紅框的例次都為1,此時(shí)應(yīng)按照SOC拼音首字母排序,但是“各“的首字母應(yīng)在”耳“的的后面,但是卻排在了前面,所以可以肯定的是用上述程序想要對(duì)SOC按拼音排序肯定是行不通的!

/ 解決方案如下: /

proc sort data=test out =test1 sortseq=linguistic(locale=zh_CN collation=PINYIN);

by descending count soc;

run;

其實(shí)方法很簡(jiǎn)單,用sort過程步里面的選項(xiàng)linguistic(locale=zh_CN collation=PINYIN);就可以實(shí)現(xiàn)了,大家可以試一下。得到的數(shù)據(jù)集如下。

圖片

但是經(jīng)過多次實(shí)驗(yàn),上述的option是無法識(shí)別多音字的,多音字的時(shí)候,系統(tǒng)會(huì)默認(rèn)按照出現(xiàn)最早的那個(gè)拼音字母排序。

在此舉一個(gè)例子:“咳嗽”?!翱取边@個(gè)字是多音字,有“hai” 和“ke“兩個(gè)讀音,系統(tǒng)會(huì)優(yōu)先選擇hai這個(gè)讀音,因?yàn)閔在k的前面。這樣排序下來,可能會(huì)導(dǎo)致有些多音字沒有按照我們的習(xí)慣讀音來排序。提醒大家注意。

(2)字符型變量的數(shù)字排序

接著用上面的數(shù)據(jù)集舉例:count_c為字符型變量,但是存放的是數(shù)字,如果直接用proc sort對(duì)count_c排序,得到的結(jié)果并不是我們想要得到的。

data test;

set order;

  count_c=strip(put(count,best.));

run;

圖片

proc sort data=test out =test1 ;

by count_c;

run;

圖片

/ 解決方案如下: /

procsort data=test out =test1 sortseq=linguistic(numeric_collation=on);

by count_c;

run;

用sort過程步里面的sortseq=linguistic(numeric_collation=on)就可以實(shí)現(xiàn)了。得到的數(shù)據(jù)集如下,大家可以自己對(duì)比,跟用數(shù)值型結(jié)果count排序的結(jié)果是一樣的。

圖片

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

    關(guān)注

    2

    文章

    521

    瀏覽量

    32822
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    字符、指針變量該如何初始化

    在敲代碼的時(shí)候,我們會(huì)給變量一個(gè)初始值,以防止因?yàn)榫幾g器的原因造成變量初始值的不確定性。對(duì)于數(shù)值類型的變量往往初始化為0,但對(duì)于其他類型的變量,如
    發(fā)表于 09-23 11:50 ?2152次閱讀

    兩種采樣方式

    兩種采樣方式.....................................
    發(fā)表于 08-08 15:04

    linux配置mysql的兩種方式

    兩種方式:a、$ find / -name mysql–print 查看是否有mysql文件夾b、$ netstat -a –n 查看是否打開3306端口
    發(fā)表于 07-26 07:46

    oracle多列排序兩種刪除表的方法的速度對(duì)比

    oracle多列排序兩種刪除表的方法的速度比較
    發(fā)表于 06-08 07:19

    編譯環(huán)境的兩種搭建方式

    編譯環(huán)境的兩種搭建方式putty工具的使用winscp工具的使用
    發(fā)表于 12-22 08:00

    SQL語(yǔ)言的兩種使用方式

    SQL語(yǔ)言的兩種使用方式在終端交互方式下使用,稱為交互式SQL嵌入在高級(jí)語(yǔ)言的程序中使用,稱為嵌入式SQL―高級(jí)語(yǔ)言如C、Java等,稱為宿主語(yǔ)言嵌入式SQL的實(shí)現(xiàn)方式源程序(用主語(yǔ)言
    發(fā)表于 12-20 06:51

    逆變器的兩種電流型控制方式

    逆變器的兩種電流型控制方式 摘要:研究分析了逆變器的兩種雙環(huán)瞬時(shí)反饋控制方式——電流型準(zhǔn)PWM控制方式和三態(tài)DPM
    發(fā)表于 07-10 11:21 ?3970次閱讀
    逆變器的<b class='flag-5'>兩種</b>電流型控制<b class='flag-5'>方式</b>

    C語(yǔ)言教程之字符變量的使用

    C語(yǔ)言教程之字符變量的使用,很好的C語(yǔ)言資料,快來學(xué)習(xí)吧。
    發(fā)表于 04-22 11:06 ?0次下載

    MC1648兩種基本VCO的壓控特性

    MC1648兩種基本VCO的壓控特性,有需要的都可以看看。
    發(fā)表于 07-20 15:48 ?43次下載

    Wincc如何與PLC進(jìn)行通訊兩種常用的方式介紹

    西門子WINCC與SiemensPLC通訊連接有多種方式,下面介紹兩種常用的通訊方式
    的頭像 發(fā)表于 02-17 09:27 ?3w次閱讀
    Wincc如何與PLC進(jìn)行通訊<b class='flag-5'>兩種</b>常用的<b class='flag-5'>方式</b>介紹

    在MATLAB/simulink中建模時(shí)的兩種不同實(shí)現(xiàn)方式

    導(dǎo)讀:本期文章主要介紹在MATLAB/simulink中建模時(shí)的兩種不同實(shí)現(xiàn)方式,一是直接用現(xiàn)成的文件庫(kù)中的模塊進(jìn)行搭建,一是用Sfunction代碼實(shí)現(xiàn)。接下來以電壓
    的頭像 發(fā)表于 09-15 10:07 ?1813次閱讀

    MATLAB/simulink中兩種實(shí)現(xiàn)建模方式的優(yōu)勢(shì)

    導(dǎo)讀:本期文章主要介紹在MATLAB/simulink中建模時(shí)的兩種不同實(shí)現(xiàn)方式,一是直接用現(xiàn)成的文件庫(kù)中的模塊進(jìn)行搭建,一是用Sfunction代碼實(shí)現(xiàn)。接下來以電壓
    的頭像 發(fā)表于 09-15 10:10 ?4884次閱讀

    互鎖正反轉(zhuǎn)電路的兩種實(shí)現(xiàn)方式

    有關(guān)正反轉(zhuǎn)電路的知識(shí),互鎖正反轉(zhuǎn)電路的兩種實(shí)現(xiàn)方式,一是接觸器互鎖正反轉(zhuǎn),一是按鈕互鎖正反轉(zhuǎn),學(xué)習(xí)下這兩種電路的工作原理,下面一起來看下
    的頭像 發(fā)表于 04-27 15:47 ?1.1w次閱讀
    互鎖正反轉(zhuǎn)電路的<b class='flag-5'>兩種</b>實(shí)現(xiàn)<b class='flag-5'>方式</b>

    三相交流負(fù)載常見的兩種連接方式

    三相交流負(fù)載常見的兩種連接方式? 三相交流電負(fù)載是現(xiàn)代電力系統(tǒng)中常見的一供電方式,它能夠提供比單相交流更穩(wěn)定和高效的電力供應(yīng)。在三相交流負(fù)載中,有
    的頭像 發(fā)表于 11-13 16:09 ?2710次閱讀

    字符、指針變量等該如何初始化

     對(duì)于數(shù)值類型的變量往往初始化為0,但對(duì)于其他類型的變量,如字符、指針變量等該如何初始化呢
    的頭像 發(fā)表于 03-18 11:02 ?1212次閱讀