[英]SAS merge on another variable if one missing (proc sql step)
我嘗試將SDC IPO數據合並到Compustat上的cusip代碼。 SDC提供cusip9(有一些缺失)和cusip6(沒有錯過),Compustat只有cusip9。 我將Compustat子串到Compustat中獲取“我自己的”cusip6變量。 但是,我寧願首先合並給定的cusip9,並且只有在cusip9中缺少,然后在cusip6上合並。 到目前為止,我的代碼是proc sql步驟的標准合並代碼:
proc sql;
create table sdc_comp
as select a.*, b.*
from compustat as a left join sdc as b
on a.cusip9 = b.cusip9
order by ipodate, gvkey, fyear;
quit;
有什么建議么? 如果一個數據步驟可以做得更好,沒有問題。 提前致謝。
嘗試使用coalsece功能。 它將返回第一個非缺失值(它將在您的情況下使用數值)。 嘗試獲取cusip6值,然后嘗試獲取cusip9。 它看起來像: SELECT COALESCE(cusip6, cusip9);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.