BookmarkSubscribeRSS Feed
letsdoit
Fluorite | Level 6

Hi I have this big data set and I need to create few subsets:

1) if _market_ contains the word "notes' => then take all "notes" out to a new dataset and remove them from the main dataset

2)then if _taxable_ = "Y" => then take all taxable out to a new dataset and remove them from the main dataset

.......and so on with few more characteristics to be taken out and at the end I want to have one dataset that doesn't contain notes, taxable etc...(based on my other if statements) and then datasets where I keep separate all the once that I don't need (for example I will have a separate dataset wit "notes", another separate wit "taxable" etc...) ...so ideally I want to create 6 datasets from the main one.

Any and all help and suggestions will be great!

Thanks!!!

1 REPLY 1
ballardw
Super User

Something like this may get you started:

data Notes   

       Taxable

        NewMainData;

       Set maindata;

       if indexw(upcase(_market_,'NOTES') > 0 then output Notes;

       if _taxable_ = 'Y' then output Taxable;

       if indexw(upcase(_market_,'NOTES') = 0 and _taxable_ ne 'Y' then output NewMainData;

run;

I would really recommend NOT updating your original main data set until you are sure everything is working which is why I create a new Main data set.

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

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

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
  • 1 reply
  • 718 views
  • 0 likes
  • 2 in conversation