作者viel (造啦~塞狼)
看板Statistics
標題[程式] SAS如何計數並產生一新變數
時間Mon Mar 8 23:38:37 2010
[軟體程式類別]:SAS
[程式問題]:資料處理
[軟體熟悉度]:
新手(不到1個月)
[問題敘述]:
想請問一下各位神人,若有以下的資料範例
想要計算在相同的CUSIP 下,有幾個分析師,並產生一新的變數"分析師數量"
該如何寫程式碼
原本想要用SQL來計算
但程式跑出來的結果確是所有CUSIP下,分析師的總量
想請問程式碼如何更改~謝謝
原始資料範例
CUSIP ANALYSTS
CODE
00001 A
00001 B
00001 C
00002 D
00002 E
想要變成的結果
CUSIP ANALYSTS
00001 3
00002 2
利用SQL跑出來的結果
ANALYSTS
5
[程式範例]:
proc sql;
create table OUT.IBESNEW as
select *
from OUT.IBES_SDC1
where CUSIP not in (
select CUSIP
from OUT.IBES_SDC1
);
select count(distinct CUSIP) as ANALYSTS
from OUT.IBES_SDC1;
quit;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.43.211.33
1F:→ liton:select custip,count(*) from XXX group by custip 03/08 23:45
2F:→ viel:感謝1樓,但是我想要產生一新變數,如按照你提供的CODE 03/09 00:06
3F:→ viel:跑出來,會是一個output而已,沒有產生新變數 03/09 00:06
4F:→ liton:自己加些 create table, count(*) as ANALYSTS不難吧 03/09 00:14
5F:→ viel:感謝~已經試出了 03/09 00:21
6F:推 kenshin528:proc freq data = XXX; freq id /out=new; run; 03/09 00:28
7F:→ kenshin528:freq CUSIP才對 03/09 00:29