06-29-2017 05:52 PM
I am new to SAS programming and I am trying to:
1. Create a new variable that is reduced from 14 characters to 7 characters for 17898 observations.
2. I also need to use one or more text manipulation functions to remove the word "COUNTY" from each value because each variable is two words, ie. Hudson County.
3. Finally, I also need to keep the variable name should also be County in the output data set.
Please help anyone!
Jersey City, NJ
06-29-2017 06:02 PM
Are you trying to do something like the following?:
data have; informat address $14.; input address &; cards; North County South County N. West County County County ; data want; set have; length County $7.; county=tranwrd(address,' County',''); run;
Art, CEO, AnalystFinder.com
06-29-2017 06:05 PM
What does "reduced" mean? Does it mean only use the first seven characters? If so, the code below will work. If "reduced" means something else, then please tell us.
06-29-2017 06:09 PM
These can all be accomplished with SAS functions.
This list has SAS functions by category so you can search for the function that you need.
Pas an example:
1. SUBSTR() to take a portion of a string.
2. SCAN() allows you to extract strings based on a delimiter
2. TRANWRD() allows you to replace a word
FYI - the number of rows doesn't matter. The code is the same unles you maybe have 20 million plus. Then you'll save time processing.
Data example; Set SASHELP.class; Name = substr(name, 1,5); *takes first 5 characters of the name; Sample_text = "Hudson County"; County = scan(sample_text, 1); Run; Proc print data=example; Run;