Re: [問題] SAS砍遺漏值與算公司數?
proc sql;
create table work.temp as
select *
from abc
where code in (
select code, sum(case when roe = . then 1 else 0 end) as cnt
from abc
group by 1
having cnt = 0
)
;
quit;
※ 引述《iinnttww (必勝客)》之銘言:
: 有兩個SAS問題想請教
: (1)我的資料是屬Panel Data,假若某家公司有一年資料為遺漏值,
: 我該如何把整家公司刪掉,以保持我的資料Balance??
: ex:
: Data abc;
: input code year roe;
: cards;
: 1101 1999 0.2
: 1101 2000 0.3
: 1101 2001 0.4
: 1102 1999 0.1
: 1102 2000 .
: 1102 2001 0.3
: ;
: run
: 如果unbalance的話~我是知道可以用if roe=. then delete;
: 但是現在要把整家1102的資料都刪了,就想不太出來
: (ps:不是if code=1102 then delete喔~~因為原始資料哪些地方有遺漏我也不知=_=")
: ---
: (2)Panel Data的公司數怎麼算?
: 1101 1999
: 1101 2000
: 1102 1999
: 1102 2000
: 1102 2001
: 1103 1999
: 我想算公司數是3 (1101,1102,1103)
: 但是想不太出指令應該如何?想請教SAS有無內鍵專門的指令?
: 還是我該用何邏輯來寫if...then
: 3Q~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.167.161.30
※ 編輯: bugle 來自: 218.167.165.124 (04/29 19:53)
討論串 (同標題文章)