SAS Programming

DATA Step, Macro, Functions and more
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.

sas-innovate-white.png

Special offer for SAS Communities members

Save $250 on SAS Innovate and get a free advance copy of the new SAS For Dummies book! Use the code "SASforDummies" to register. Don't miss out, May 6-9, in Orlando, Florida.

 

View the full agenda.

Register now!

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
  • 561 views
  • 0 likes
  • 2 in conversation