I want the program not calculate flux and age if it is the first secid. I write this but it does not work. it still calculate for the first secid. What is wrong with this
if first.secid then call missing(flux, age);
data ageyear; set inception; Age = yrdif(Inception_date, sas_date,'Actual'); flux=(TNA-lag1(TNA)*(1+mret))/(lag1(TNA)); if first.secid then call missing(flux, age); run;
The FIRST. construct in a SAS data step requires a BY statement.
Also, it's not 100% clear to me what your requirement is ... do you mean first record in the data set, or first record of a block of SECID? If it is first record in the data set use
if _n_=1 then ...
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.