看板 Statistics 關於我們 聯絡資訊
我的資料可以簡化的如下顯示: ID Name Year Sales Control 1311 A 200712 12345 1.25 1311 A 200612 9999 1.26 1477 B 200712 95863 1.27 1477 B 200612 5555 1.28 2544 C 200712 7065 1.29 2544 C 200612 10243 1.30 4055 D 200712 9123 1.31 4055 D 200612 9023 1.32 5123 E 200712 12352 1.33 5123 E 200612 23412 1.34 現在想把資料根據Sales的大小分成五組 (假設資料有一百筆,則最大的1-20筆為第一組,21-40為第二組...81-100為第五組) 作組內資料的比較 我的購想一是先把資料根據Sales的大小排序 再把它切成五組 以這裡的例子來看,排序如下 再把它兩個兩個分成一組 ID Name Year Sales Control 1477 B 200712 95863 1.27 5123 E 200612 23412 1.34 5123 E 200712 12352 1.33 1311 A 200712 12345 1.25 2544 C 200612 10243 1.30 1311 A 200612 9999 1.26 4055 D 200712 9123 1.31 4055 D 200612 9023 1.32 2544 C 200712 7065 1.29 1477 B 200612 5555 1.28 不過確不知道 分組的語法應該要如何寫 我的購想二是可以靠PROC UNIVARIATE找到第20百分位數,第40百分位數,...第80百分位數 然後再根據條件式(IF)來幫忙分組 ID Name Year Sales Control Group 1311 A 200712 12345 1.25 2 1311 A 200612 9999 1.26 3 1477 B 200712 95863 1.27 1 1477 B 200612 5555 1.28 5 2544 C 200712 7065 1.29 5 2544 C 200612 10243 1.30 3 4055 D 200712 9123 1.31 4 4055 D 200612 9023 1.32 4 5123 E 200712 12352 1.33 2 5123 E 200612 23412 1.34 1 接著就可以利用PROC MEANS CLASS BY 或PROC UNIVARIATE BY 做組內資料的比較了 可是也是卡在 不知道要如何把第20百分位數,第40百分位數,...第80百分位數 輸出來 請問大家 這兩個購想的語法,該如何寫呢 謝謝大家的幫忙 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.23.195.23
qfchi:資料經過sales排序後 if _n_ <= 20 then group=1 02/08 15:56
qfchi:else if 20 < _n_ <=40 then group=2 依此類推 02/08 15:56
tew:proc rank 02/08 16:40
chinghsi:請問1樓 如果n是個很大,不確定多少的數呢 02/08 17:25
west1996:先把資料掃過一遍後把筆數讀出來當變數就行了 02/08 20:50