作者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