<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CEYCQXk-fyp7ImA9WhRVFEU.&quot;"><id>tag:blogger.com,1999:blog-10629375</id><updated>2012-01-13T11:16:00.757-08:00</updated><category term="version 9" /><category term="append" /><category term="debugging" /><category term="web" /><category term="hex" /><category term="sql merge" /><category term="Side Project" /><category term="input" /><category term="format" /><category term="mainframe" /><category term="array" /><category term="options" /><category term="batch" /><category term="ruby on rails" /><category term="excel" /><category term="jobs" /><category term="git" /><category term="sql" /><category term="informat" /><category term="unix" /><category term="function" /><category term="iDoc" /><category term="windows" /><category term="regular expressions" /><category term="macro" /><category term="statistics" /><category term="productivity" /><category term="character" /><category term="file" /><category term="error" /><category term="missings" /><category term="compress" /><category term="GRRR" /><category term="proc" /><category term="merge" /><category term="globalForum" /><title>Data Steps</title><subtitle type="html">A regularly updated blog about programming with the SAS System.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://datasteps.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>99</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/DataSteps" /><feedburner:info uri="datasteps" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;D0cBRno7fSp7ImA9WhRXFE8.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-9055321477363457054</id><published>2011-12-20T15:23:00.000-08:00</published><updated>2011-12-20T15:50:57.405-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-20T15:50:57.405-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="missings" /><category scheme="http://www.blogger.com/atom/ns#" term="debugging" /><title>Fat Fingers</title><summary type="html">I just looked at some code I had written a few months ago.  It categorized things based on a bunch of criteria.  At the end of the data step I output the categories that did not fit into a definition bucket nicely:if bucket in(12,11,10,7,6,5,4) then output junk;But then I remembered that I also wanted to see if any of them went past all the logic and came up with a missing bucket:if bucket in(&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/RWXJ4MbZOkw" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/9055321477363457054/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/12/fat-fingers.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/9055321477363457054?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/9055321477363457054?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/RWXJ4MbZOkw/fat-fingers.html" title="Fat Fingers" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>2</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/12/fat-fingers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MNRnk7fCp7ImA9WhRQEkw.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-15520083078703695</id><published>2011-12-06T15:43:00.000-08:00</published><updated>2011-12-06T15:51:37.704-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-06T15:51:37.704-08:00</app:edited><title>SAS 9.3</title><summary type="html">Why is SAS 9.3 so big?  Wait, not big.  Massive.  Huge.&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/lB4iA28IOkg" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/15520083078703695/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/12/sas-93.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/15520083078703695?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/15520083078703695?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/lB4iA28IOkg/sas-93.html" title="SAS 9.3" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>0</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/12/sas-93.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EEQ3kyeyp7ImA9WhRRF0U.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-375092386413954870</id><published>2011-12-01T15:04:00.001-08:00</published><updated>2011-12-01T15:20:02.793-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-01T15:20:02.793-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="productivity" /><category scheme="http://www.blogger.com/atom/ns#" term="macro" /><title>Little Utility Macro</title><summary type="html">A lot of times when I am working with interactive SAS, I find myself staring at a SAS date that has not been formatted. The quickest way to see the actual date was to go to my "scratch" enhanced editor and write a quick data _null_ to put it to the log. That was before I realized that macros can be invoked from the command line.%macro date(d);  %let r = %sysfunc( putN(&amp;amp;d,mmddyy10.) );  %put &amp;amp;r;%&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/wQ_SiXDkLyg" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/375092386413954870/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/12/little-utility-macro.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/375092386413954870?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/375092386413954870?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/wQ_SiXDkLyg/little-utility-macro.html" title="Little Utility Macro" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>0</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/12/little-utility-macro.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4FSH4-fyp7ImA9WhRSFEU.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-6106849873242004267</id><published>2011-11-16T16:12:00.000-08:00</published><updated>2011-11-16T16:15:19.057-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-16T16:15:19.057-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="proc" /><title>Remove Formatting From Variables</title><summary type="html">What do you do if you have a SAS data set with formatted variables, but you don't have access to the format?  You have to remove the format from the variables if you want to work with the data set.The easiest way to remove formats from variables in a data set is to use proc datasets.Assuming I have a data set named Responses with some variables that have formats applied to them that no longer &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/w7h9vf89We4" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/6106849873242004267/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/11/remove-formatting-from-variables.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6106849873242004267?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6106849873242004267?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/w7h9vf89We4/remove-formatting-from-variables.html" title="Remove Formatting From Variables" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>2</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/11/remove-formatting-from-variables.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04ASHgyeyp7ImA9WhRTGEo.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-4063085569481006234</id><published>2011-11-09T13:36:00.000-08:00</published><updated>2011-11-09T13:59:09.693-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-09T13:59:09.693-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="GRRR" /><title /><summary type="html">I have been following some of the recent talk going on the blogosphere about R and SAS.R vs SAS/SPSS in Corporations: A view from the other sideShe is correct that it is nearly impossible to get large organizations to give up their propietary software. And she does a great job explaining why. So should the SAS Institute be worried about R?First lets take a moment to point out something that is &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/cP_VjNvYh78" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/4063085569481006234/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/11/i-have-been-following-some-of-recent.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4063085569481006234?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4063085569481006234?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/cP_VjNvYh78/i-have-been-following-some-of-recent.html" title="" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/11/i-have-been-following-some-of-recent.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0MBSHY9fCp7ImA9WhRTEkg.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-5042831887901243869</id><published>2011-11-02T11:38:00.000-07:00</published><updated>2011-11-02T11:44:19.864-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-02T11:44:19.864-07:00</app:edited><title>SAS Research Programmer/Analyst</title><summary type="html">SAS Research Programmer/Analyst job in Worcester MassachusettsLocation: Worcester Telecommute: NoJob Type: full time Pay:  50,000-60,000  Research Analysts/Programmers provide meaningful contributions  by creating, managing, and analyzing large and complex data files on  health care utilization.  The Institute’s faculty conducts local and  multi-site research studies on important public health &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/aMF8ISgijNo" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/5042831887901243869/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/11/sas-research-programmeranalyst.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/5042831887901243869?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/5042831887901243869?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/aMF8ISgijNo/sas-research-programmeranalyst.html" title="SAS Research Programmer/Analyst" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>0</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/11/sas-research-programmeranalyst.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMESHk7eyp7ImA9WhRTEUU.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-2844140765092683848</id><published>2011-11-01T14:50:00.000-07:00</published><updated>2011-11-01T15:26:49.703-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-01T15:26:49.703-07:00</app:edited><title>New SAS Job Site</title><summary type="html">Well, I finally got my new site up and running. It is a job site specifically for SAS programmers looking for SAS jobs in the US. I switched the www.sasCoders.com URL from this blog to the new site yesterday. Hopefully it won't be too confusing to people while Google updates their index. This blog can always be reached at http://datasteps.blogspot.com If you are a recruiter, please hop on over to&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/8mrvEf28X5w" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/2844140765092683848/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/11/new-sas-job-site.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/2844140765092683848?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/2844140765092683848?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/8mrvEf28X5w/new-sas-job-site.html" title="New SAS Job Site" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/11/new-sas-job-site.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0EGSXw9fyp7ImA9WhdbFEk.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-3438737545960326579</id><published>2011-10-12T12:37:00.000-07:00</published><updated>2011-10-12T13:00:28.267-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-12T13:00:28.267-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="productivity" /><category scheme="http://www.blogger.com/atom/ns#" term="proc" /><category scheme="http://www.blogger.com/atom/ns#" term="append" /><title>Efficiently Drop/Keep SAS Data Set Columns</title><summary type="html">What is the most efficient way to drop/keep columns (variables) in sas tables (data sets)?For the most part, we would correctly say "using a keep= option on the data set as it is being read into the current step." A quick example to illustrate:  data someData;    set myData(keep= x y z);  run;  proc sort data = myData(keep= x y z) out= someData;    by x y;  run;In fact, I even wrote a whole paper&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/95QWOwbFz_I" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/3438737545960326579/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/10/effeciently-dropkeep-sas-data-set.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/3438737545960326579?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/3438737545960326579?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/95QWOwbFz_I/effeciently-dropkeep-sas-data-set.html" title="Efficiently Drop/Keep SAS Data Set Columns" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>0</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/10/effeciently-dropkeep-sas-data-set.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0EBQ3s-fSp7ImA9WhdUGU8.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-5960237582635060035</id><published>2011-10-06T11:07:00.000-07:00</published><updated>2011-10-06T11:27:32.555-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-06T11:27:32.555-07:00</app:edited><title>Thank You Steve Jobs</title><summary type="html">Today I am going to dedicate my little slice of this giant internet to Steve Jobs.  Like a lot of people around the world, I found out Steve Jobs passed away through an Apple product.  His vision and creativity touched all of us.  Rather than me clumsily listing all the inspiring things he accomplished with his short time, I thought it would be better to share some of his own words.  If you &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/KL0_b06tu3Q" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/5960237582635060035/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/10/thank-you-steve-jobs.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/5960237582635060035?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/5960237582635060035?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/KL0_b06tu3Q/thank-you-steve-jobs.html" title="Thank You Steve Jobs" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/10/thank-you-steve-jobs.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcERn4zcSp7ImA9WhdRGUw.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-6182883128021616363</id><published>2011-08-09T12:22:00.000-07:00</published><updated>2011-08-09T12:26:47.089-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-09T12:26:47.089-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="sql merge" /><category scheme="http://www.blogger.com/atom/ns#" term="sql" /><category scheme="http://www.blogger.com/atom/ns#" term="merge" /><title>First One In Gets the Win</title><summary type="html">Yikes, it's been a while since the last update!  So I will try to keep this one short and useful.  Most everybody knows there are essentially two ways for tables to be merged in SAS: using the merge statement in the data step and using a join in SQL.  Programmers tend to prefer one way over the other, and generally they are interchangeable.  However, there are some minor differences that you &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/cjZrqIcMKaE" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/6182883128021616363/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/08/first-one-in-gets-win.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6182883128021616363?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6182883128021616363?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/cjZrqIcMKaE/first-one-in-gets-win.html" title="First One In Gets the Win" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>0</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/08/first-one-in-gets-win.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUUMRn8-eip7ImA9WhZSFE4.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-4373446541724266632</id><published>2011-03-29T14:05:00.000-07:00</published><updated>2011-03-29T14:14:47.152-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-29T14:14:47.152-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="debugging" /><title>Data Step Hooks</title><summary type="html">Here is something to keep in mind when using the END= option on the set statement:  There is no guarantee you will hit the end of file.Simple example to illustrate:data test;  do i = 1 to 10;    output;  end;run;data _null_;  set test(where=(i &amp;gt; 10)) end= eof;  if eof    then put "It set EOF for end of file";run;In the SAS documentation this is stated cryptically:Restriction: END= cannot be used &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/uvg6-jdkymM" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/4373446541724266632/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2011/03/data-step-hooks.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4373446541724266632?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4373446541724266632?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/uvg6-jdkymM/data-step-hooks.html" title="Data Step Hooks" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>2</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2011/03/data-step-hooks.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CU4HQXY9fCp7ImA9Wx5aGEs.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-2253299090661578074</id><published>2010-11-15T15:06:00.000-08:00</published><updated>2010-11-15T15:32:10.864-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-15T15:32:10.864-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="macro" /><title>!= does not == ne</title><summary type="html">In general, the more programming languages you work with, the better you are going to become as a programmer.  I try to work with a new language about every year, so I can stretch my little brain in lots of different directions.However, the downside is sometimes you lose track of the syntax that used to be second nature to you.  Or maybe it's just old age?  Wait, what was I talking about?Oh yeah,&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/JWltVU8KaSI" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/2253299090661578074/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/11/does-not-ne.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/2253299090661578074?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/2253299090661578074?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/JWltVU8KaSI/does-not-ne.html" title="!= does not == ne" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>5</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/11/does-not-ne.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EAQ3wyfSp7ImA9Wx5XFkg.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-1727746868601730763</id><published>2010-09-16T08:36:00.000-07:00</published><updated>2010-09-16T08:40:42.295-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-16T08:40:42.295-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="function" /><category scheme="http://www.blogger.com/atom/ns#" term="format" /><category scheme="http://www.blogger.com/atom/ns#" term="excel" /><title>Leading Zeroes</title><summary type="html">Here's a situation that comes up pretty often.  You receive a file that contains zip codes.  It's an excel file and you need to create a SAS data set out of it, so you can do some nifty market analysis.  No problem, you clickety clickety through the SAS import wizard and voila! a data set is created.  However, the zip_code variable is numeric and doesn't have leading zeroes.Even though zip codes &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/G8DDbCDS_CE" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/1727746868601730763/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/09/leading-zeroes.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1727746868601730763?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1727746868601730763?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/G8DDbCDS_CE/leading-zeroes.html" title="Leading Zeroes" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>3</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/09/leading-zeroes.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEEQ388fSp7ImA9Wx5QEkQ.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-4646918702488451706</id><published>2010-08-31T15:05:00.000-07:00</published><updated>2010-08-31T15:26:42.175-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-31T15:26:42.175-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="statistics" /><title>It's a Math, Math World</title><summary type="html">Here is a blog that I found.  It belongs to Michael O'Brien.  I have not had a chance to really read through any of his posts, but it is on my to-do list as soon as I have a little tiny bit of time.  Based on my quick cursory view of it, he seems to be writing quite a bit about statistics.  And not the crazy insane look how whippety smart I am statistics writing that makes my eyes hurt and my &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/woXlxaKAxTc" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/4646918702488451706/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/08/its-math-math-world.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4646918702488451706?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4646918702488451706?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/woXlxaKAxTc/its-math-math-world.html" title="It's a Math, Math World" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/08/its-math-math-world.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0MFRXw_cCp7ImA9Wx5TEUs.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-1959300737252085345</id><published>2010-07-26T11:27:00.000-07:00</published><updated>2010-07-26T11:36:54.248-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-26T11:36:54.248-07:00</app:edited><title>Thanks LabSug!</title><summary type="html">Thank you Los Angeles Basin SAS User Group for listening to my talk on SAS MACRO: Beyond The Basics.The room provided by RAND was excellent.  Everything was well organized and the day went without a hitch.  The audience was very engaged and had great questions (definitely not the sleepy group I was expecting right after lunch!).  Overall I had a great time, and look forward to getting the chance &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/J2aU1RaC6xI" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/1959300737252085345/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/07/thanks-labsug.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1959300737252085345?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1959300737252085345?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/J2aU1RaC6xI/thanks-labsug.html" title="Thanks LabSug!" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/07/thanks-labsug.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMFRn0zfCp7ImA9WxFaFUU.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-1510836812719603607</id><published>2010-07-19T15:25:00.000-07:00</published><updated>2010-07-19T16:00:17.384-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-19T16:00:17.384-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="function" /><category scheme="http://www.blogger.com/atom/ns#" term="array" /><category scheme="http://www.blogger.com/atom/ns#" term="character" /><category scheme="http://www.blogger.com/atom/ns#" term="informat" /><title /><summary type="html">I have a data set of sales data by day.  Unfortunately the names of the columns represent the dates.  In order to work with the data, I need to transform the data set so each day represents an observation.The data set looks something like this:store _010_05_01 _010_05_02 _010_05_03 ....1     8          5          62     6          9          33     7          9          8....As you can see, I &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/IRFjg760T-4" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/1510836812719603607/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/07/i-have-data-set-of-sales-data-by-day.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1510836812719603607?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1510836812719603607?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/IRFjg760T-4/i-have-data-set-of-sales-data-by-day.html" title="" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/07/i-have-data-set-of-sales-data-by-day.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQBRXY_eCp7ImA9WxFWFk0.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-4971418804826592140</id><published>2010-06-03T14:33:00.000-07:00</published><updated>2010-06-03T14:59:14.840-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-03T14:59:14.840-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="merge" /><title>How To Get What You Want Out of a Data Step Merge</title><summary type="html">This Fall my daughter will be going to kindergarden.  So like all other hyper-attentive parents we have started introducing her to the concept of homework.  The other night I got out her crayons and introduced her to set theory.  After about an hour I finally got her to draw her Venn diagrams with the the corresponding SAS data step code for a merge.  I was so proud I decided to post it here.In &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/c0i2MEFZ7VI" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/4971418804826592140/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/06/how-to-get-what-you-want-out-of-data.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4971418804826592140?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4971418804826592140?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/c0i2MEFZ7VI/how-to-get-what-you-want-out-of-data.html" title="How To Get What You Want Out of a Data Step Merge" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_rmS0luAL9fc/TAgjAZ1anUI/AAAAAAAAAEA/YunjoQ2CUhM/s72-c/venn_crayons2.bmp" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/06/how-to-get-what-you-want-out-of-data.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUMASHk_fyp7ImA9WxFXE00.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-4427595943858950532</id><published>2010-05-19T15:02:00.000-07:00</published><updated>2010-05-19T15:17:29.747-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-19T15:17:29.747-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="proc" /><category scheme="http://www.blogger.com/atom/ns#" term="debugging" /><title>Sorting Pitfalls</title><summary type="html">SAS Proc sort is probably one of the easiest procs to use.  And sorting in other programs/software is generally pretty straightforward.  However, there are a few things I always remind myself when sorting.When you use proc sort you don't know who is doing the sorting.  Does this surprise you?  Don't worry-- I don't know who's doing the sorting either!It could be a low level routine called by SAS &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/bTIFB1BrAlI" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/4427595943858950532/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/05/sorting-pitfalls.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4427595943858950532?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/4427595943858950532?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/bTIFB1BrAlI/sorting-pitfalls.html" title="Sorting Pitfalls" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>0</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/05/sorting-pitfalls.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQHSHs_fyp7ImA9WxFXEk8.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-6674109397917968368</id><published>2010-05-18T16:16:00.000-07:00</published><updated>2010-05-18T16:45:39.547-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-18T16:45:39.547-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="productivity" /><title>Cloud App</title><summary type="html">Oh man it has been a long time since I have updated this blog.  So what's new?I have a new son!  The band I am playing in recently played a gig at the Whisky A Go Go in Hollywood.  We're playing at The Cat Club in Hollywood this Thur come one come all, promotion, promotion, promotion and all that :)So between playing bass and changing countless diapers I have found my free time has been severely &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/AelzqsrmeqA" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/6674109397917968368/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/05/cloud-app.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6674109397917968368?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6674109397917968368?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/AelzqsrmeqA/cloud-app.html" title="Cloud App" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>0</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/05/cloud-app.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEAMQ3o-cSp7ImA9WxBQGEs.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-1618532804888208078</id><published>2010-01-18T16:54:00.000-08:00</published><updated>2010-01-18T16:59:42.459-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-18T16:59:42.459-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="function" /><category scheme="http://www.blogger.com/atom/ns#" term="array" /><title>Finding the Max Value In An Array</title><summary type="html">The max() function makes it easy to find the maximum value in a SAS array. Given an array like:array x[*] x1-x10;maxValue = max(of x[*]);Pretty slick, eh?  Remember, it doesn't return the position of the max element, just the max value.This can be pretty useful if you want to find out if at least one element of an array has a value.  Like if you have an array of answers and you want to find out &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/vyRhNQ7kR90" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/1618532804888208078/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2010/01/finding-max-value-in-array.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1618532804888208078?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/1618532804888208078?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/vyRhNQ7kR90/finding-max-value-in-array.html" title="Finding the Max Value In An Array" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2010/01/finding-max-value-in-array.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EDSHg-eSp7ImA9WxBSEEQ.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-7017309655588514064</id><published>2009-12-17T15:03:00.000-08:00</published><updated>2009-12-17T15:14:39.651-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-17T15:14:39.651-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Side Project" /><category scheme="http://www.blogger.com/atom/ns#" term="ruby on rails" /><title>Design</title><summary type="html">You are at the gym running on a treadmill listening to your iPhone through the earbuds.  You're having one of those good, easy runs.  Maybe you're listening to an interesting podcast like WNYC's Radio Lab, or some good running music.  You're focused.  You've got a nice rhythm going and your body feels relaxed.  You push the pace a little more than normal.  Sweat is dripping off you.  Endorphines &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/-RyDGkK8rdw" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/7017309655588514064/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2009/12/design.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/7017309655588514064?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/7017309655588514064?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/-RyDGkK8rdw/design.html" title="Design" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2009/12/design.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4NSHc8fyp7ImA9WxBSEEQ.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-7214766543520749945</id><published>2009-12-11T16:59:00.000-08:00</published><updated>2009-12-17T15:03:19.977-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-17T15:03:19.977-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Side Project" /><category scheme="http://www.blogger.com/atom/ns#" term="git" /><category scheme="http://www.blogger.com/atom/ns#" term="ruby on rails" /><title>Some Preliminaries</title><summary type="html">As I mentioned in an earlier post, I am going to build a new site dedicated to SAS jobs. Before I actually start coding the site, there are some preliminary decisions that need to be made. I have already decided to use Ruby on Rails for the framework. I have just started learning it and so far I like what I have seen. I have also decided on my host already. Although nearly every host says they &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/UVJjL3q0eT8" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/7214766543520749945/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2009/12/some-preliminaries.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/7214766543520749945?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/7214766543520749945?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/UVJjL3q0eT8/some-preliminaries.html" title="Some Preliminaries" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2009/12/some-preliminaries.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcFRn0-eSp7ImA9WxBTFE0.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-6669064574586926424</id><published>2009-12-09T15:31:00.000-08:00</published><updated>2009-12-09T15:56:57.351-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-09T15:56:57.351-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="character" /><category scheme="http://www.blogger.com/atom/ns#" term="regular expressions" /><title>Some Fun with SAS and Perl Regular Expressions</title><summary type="html">This post assumes you have a little understanding of how regular expressions work and specifically how SAS implements regular expressions. I recently did something like this and thought it would be good to share.  Suppose you have a program that searches through a big text field for a specific word.  That's pretty easy to code and you can even get away with just using a simple indexW() function.&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/6d3OUcufcEo" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/6669064574586926424/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2009/12/some-fun-with-sas-and-perl-regular.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6669064574586926424?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/6669064574586926424?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/6d3OUcufcEo/some-fun-with-sas-and-perl-regular.html" title="Some Fun with SAS and Perl Regular Expressions" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>2</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2009/12/some-fun-with-sas-and-perl-regular.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4DQXY-eip7ImA9WxBSEEQ.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-123273256018154822</id><published>2009-12-02T16:36:00.000-08:00</published><updated>2009-12-17T15:02:50.852-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-17T15:02:50.852-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Side Project" /><title>Side Projects</title><summary type="html">A few years ago I created a site that lets users donate their SAS expertise by creating online documentation. Users could put in their own example code, explain potential pitfalls, share tips, etc. I coded it all by hand in Perl with MySQL, JavaScript and HTML. I even included some nifty AJAX for logging in, etc. And it had a trendy name too: iDoc. As in "I document" verb, or "Internet &lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/V-KhEnnj7tU" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/123273256018154822/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2009/12/side-projects.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/123273256018154822?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/123273256018154822?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/V-KhEnnj7tU/side-projects.html" title="Side Projects" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>1</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2009/12/side-projects.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0cFR3cyeyp7ImA9WxNbFks.&quot;"><id>tag:blogger.com,1999:blog-10629375.post-996932118006841501</id><published>2009-11-19T11:56:00.001-08:00</published><updated>2009-11-19T12:03:36.993-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-19T12:03:36.993-08:00</app:edited><title>Keep and Rename Data Set Options</title><summary type="html">I always forget which gets applied first when using the keep= and rename= data set options on the same data set.  So I thought I'd just put it here so I will remember:Keep happens before the rename.Keep happens before the rename.Keep happens before the rename.There.  Now I won't forget.A little test code to prove it:data test;  length x y z $5;run;data test;  set test(keep=x y z rename=(x=x2));&lt;img src="http://feeds.feedburner.com/~r/DataSteps/~4/LBFp5RezL0g" height="1" width="1"/&gt;</summary><link rel="replies" type="application/atom+xml" href="http://datasteps.blogspot.com/feeds/996932118006841501/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://datasteps.blogspot.com/2009/11/keep-and-rename-data-set-options.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/996932118006841501?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/10629375/posts/default/996932118006841501?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/DataSteps/~3/LBFp5RezL0g/keep-and-rename-data-set-options.html" title="Keep and Rename Data Set Options" /><author><name>Stephen</name><uri>http://www.blogger.com/profile/01356803756509162192</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="24" height="32" src="http://3.bp.blogspot.com/_rmS0luAL9fc/Suc7Fj2v3XI/AAAAAAAAACY/OutHe9jicj0/S220/IMG_2866.JPG" /></author><thr:total>2</thr:total><feedburner:origLink>http://datasteps.blogspot.com/2009/11/keep-and-rename-data-set-options.html</feedburner:origLink></entry></feed>

