BookmarkSubscribeRSS Feed
deleted_user
Not applicable
Hi all

I am a SAS beginner.

I am working with financial time series data and need to filter out data for around 3000 firms from a huge data set. I have a unique ID by which I can identify these 3000 firms but I cant use standard statements such as 'if', 'where' in the SAS code because I dont think its practical to list 3000 objects in a SAS code.

Is there a way I can compare my ID variable in the main data set to the list of 3000 IDs i store as an external file? Or is there any other way of doing this? Do let me know.

Ronnie
2 REPLIES 2
GertNissen
Barite | Level 11
Hi ronmama

Your right about not writing 3000 if statements 🙂

You can load your list of firms into SAS and then use i.e Data step merge or PROC SQL.

i.e have a look at this simple mock-up code
[pre]
data filtered;
merge timeseries(in=a)
firms(in=b);
by id;
if a and not b then delete;
run;
[/pre]
deleted_user
Not applicable
Hi geniz

thank you very much. it works.:)

Ronnie

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

What is Bayesian Analysis?

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1230 views
  • 0 likes
  • 2 in conversation