<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: how to code this efficiently? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304767#M64885</link>
    <description>&lt;P&gt;Two column headings were all you needed...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input string $30.;
cards;
CYCLE1 DAY1	
CYCLE1 DAY8	
CYCLE1 DAY15	
CYCLE1 DAY22	
CYCLE1 DAY29	
CYCLE1 DAY36
CYCLE2 DAY1	
CYCLE2 DAY8	
CYCLE2 DAY15	
CYCLE2 DAY22	
CYCLE2 DAY29	
CYCLE2 DAY36	
CYCLE3 DAY1	
CYCLE3 DAY8	
CYCLE3 DAY15	
CYCLE3 DAY22	
CYCLE3 DAY29
;
run;

data have2;
set have;

cycle=substr(scan(string, 1), 6);
day = substr(scan(string, 2), 4);

run;

proc sort data=have2;
by cycle day;
run;

data want;
set have2;
by cycle;
if first.cycle then Index=input(cycle, 8.)*10 + 1;
else index+1;

want_field = 1000+index;

drop cycle day index;

run;	&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Fri, 14 Oct 2016 19:12:19 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2016-10-14T19:12:19Z</dc:date>
    <item>
      <title>how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304738#M64880</link>
      <description>&lt;P&gt;I have data with the right column, "CYCLE1 DAY1" etc, and want to recode into the left column.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am thinking about a do loop but not sure how to do it. Can anyone help? Thanks&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="916"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1011&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE1 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1012&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE1 DAY8&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1013&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE1 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1014&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE1 DAY22&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1015&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE1 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1016&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE1 DAY36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1021&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE2 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1022&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE2 DAY8&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1023&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE2 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1024&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE2 DAY22&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1025&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE2 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1026&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE2 DAY36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1031&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE3 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1032&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE3 DAY8&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1033&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE3 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1034&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE3 DAY22&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1035&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE3 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1041&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE4 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1042&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE4 DAY8&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1043&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE4 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1044&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE4 DAY22&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1045&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE4 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1051&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE5 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1053&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE5 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1055&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE5 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1051&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE6 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1063&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE6 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1065&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE6 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1071&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE7 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1073&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE7 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1075&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE7 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1081&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE8 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1083&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE8 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1085&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE8 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1091&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE9 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1093&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE9 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1095&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE9 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1101&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE10 DAY1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1103&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE10 DAY15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="458"&gt;1105&lt;/TD&gt;
&lt;TD width="458"&gt;CYCLE10 DAY29&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
      <pubDate>Fri, 14 Oct 2016 17:30:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304738#M64880</guid>
      <dc:creator>fengyuwuzu</dc:creator>
      <dc:date>2016-10-14T17:30:18Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304746#M64881</link>
      <description>&lt;P&gt;No...because you haven't provided enough information on what you're trying to do.&lt;/P&gt;
&lt;P&gt;Post a more &lt;STRONG&gt;&lt;U&gt;detailed&lt;/U&gt;&lt;/STRONG&gt; BUT smaller example. We only need about 5 or 6 rows to get the idea and please format it appropriately to fit in the forum. &amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 17:54:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304746#M64881</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-10-14T17:54:12Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304750#M64882</link>
      <description>&lt;P&gt;that is all the data I have. my code is like this but there are errors. can anyone help me improve the code?&lt;/P&gt;
&lt;PRE&gt;data out;
set in;&lt;BR /&gt;i=1;&lt;BR /&gt;do while (i &amp;lt;10);&lt;BR /&gt; if i=input(substr(avisit, 6, 1),1.) then do;&lt;BR /&gt; if 'DAY1' in avisit then avisitn='10'||put(i,1.)||'1';&lt;BR /&gt; if 'DAY8' in avisit then avisitn='10'||put(i,1.)||'2';&lt;BR /&gt; if 'DAY15' in avisit then avisitn='10'||put(i,1.)||'3';&lt;BR /&gt; if 'DAY22' in avisit then avisitn='10'||put(i,1.)||'4';&lt;BR /&gt; if 'DAY29' in avisit then avisitn='10'||put(i,1.)||'5';&lt;BR /&gt; if 'DAY36' in avisit then avisitn='10'||put(i,1.)||'6';&lt;BR /&gt; end;&lt;BR /&gt; i=i+1;&lt;BR /&gt; end;&lt;BR /&gt; run&amp;nbsp;&lt;/PRE&gt;</description>
      <pubDate>Fri, 14 Oct 2016 18:21:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304750#M64882</guid>
      <dc:creator>fengyuwuzu</dc:creator>
      <dc:date>2016-10-14T18:21:33Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304755#M64883</link>
      <description>&lt;P&gt;I don't understand what you're trying to do. Post a small example of what you have and what your trying to get based on what you have. Non working code doesn't tell us much especially if it's a logic/methodology issue.&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 18:28:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304755#M64883</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-10-14T18:28:10Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304760#M64884</link>
      <description>&lt;TABLE width="238"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;have&lt;/TD&gt;
&lt;TD width="116"&gt;want&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE1 DAY1&lt;/TD&gt;
&lt;TD width="116"&gt;1011&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE1 DAY8&lt;/TD&gt;
&lt;TD width="116"&gt;1012&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE1 DAY15&lt;/TD&gt;
&lt;TD width="116"&gt;1013&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE1 DAY22&lt;/TD&gt;
&lt;TD width="116"&gt;1014&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE1 DAY29&lt;/TD&gt;
&lt;TD width="116"&gt;1015&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE1 DAY36&lt;/TD&gt;
&lt;TD width="116"&gt;1016&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE2 DAY1&lt;/TD&gt;
&lt;TD width="116"&gt;1021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE2 DAY8&lt;/TD&gt;
&lt;TD width="116"&gt;1022&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE2 DAY15&lt;/TD&gt;
&lt;TD width="116"&gt;1023&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE2 DAY22&lt;/TD&gt;
&lt;TD width="116"&gt;1024&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE2 DAY29&lt;/TD&gt;
&lt;TD width="116"&gt;1025&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE2 DAY36&lt;/TD&gt;
&lt;TD width="116"&gt;1026&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE3 DAY1&lt;/TD&gt;
&lt;TD width="116"&gt;1031&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE3 DAY8&lt;/TD&gt;
&lt;TD width="116"&gt;1032&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE3 DAY15&lt;/TD&gt;
&lt;TD width="116"&gt;1033&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE3 DAY22&lt;/TD&gt;
&lt;TD width="116"&gt;1034&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="122"&gt;CYCLE3 DAY29&lt;/TD&gt;
&lt;TD width="116"&gt;1035&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
      <pubDate>Fri, 14 Oct 2016 18:39:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304760#M64884</guid>
      <dc:creator>fengyuwuzu</dc:creator>
      <dc:date>2016-10-14T18:39:07Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304767#M64885</link>
      <description>&lt;P&gt;Two column headings were all you needed...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input string $30.;
cards;
CYCLE1 DAY1	
CYCLE1 DAY8	
CYCLE1 DAY15	
CYCLE1 DAY22	
CYCLE1 DAY29	
CYCLE1 DAY36
CYCLE2 DAY1	
CYCLE2 DAY8	
CYCLE2 DAY15	
CYCLE2 DAY22	
CYCLE2 DAY29	
CYCLE2 DAY36	
CYCLE3 DAY1	
CYCLE3 DAY8	
CYCLE3 DAY15	
CYCLE3 DAY22	
CYCLE3 DAY29
;
run;

data have2;
set have;

cycle=substr(scan(string, 1), 6);
day = substr(scan(string, 2), 4);

run;

proc sort data=have2;
by cycle day;
run;

data want;
set have2;
by cycle;
if first.cycle then Index=input(cycle, 8.)*10 + 1;
else index+1;

want_field = 1000+index;

drop cycle day index;

run;	&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 14 Oct 2016 19:12:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304767#M64885</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-10-14T19:12:19Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304768#M64886</link>
      <description>&lt;P&gt;data have;&lt;BR /&gt;input x &amp;amp;$30.;&lt;BR /&gt;_x=cats('10',compress(scan(x,1),,'kd'), (round(compress(scan(x,2),,'kd')/7)+1));&lt;BR /&gt;cards;&lt;BR /&gt;CYCLE4 DAY1&lt;BR /&gt;CYCLE4 DAY8&lt;BR /&gt;CYCLE4 DAY15&lt;BR /&gt;CYCLE4 DAY22&lt;BR /&gt;CYCLE4 DAY29&lt;BR /&gt;CYCLE5 DAY1&lt;BR /&gt;CYCLE5 DAY15&lt;BR /&gt;CYCLE5 DAY29&lt;BR /&gt;CYCLE6 DAY1&lt;BR /&gt;;&lt;BR /&gt;proc print;&lt;BR /&gt;run;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 19:19:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304768#M64886</guid>
      <dc:creator>slchen</dc:creator>
      <dc:date>2016-10-14T19:19:36Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304772#M64887</link>
      <description>&lt;P&gt;Thank you. I got your idea. Right now the order is wrong because DAY8 was ranked the last, but I will try to figure it out.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 19:26:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304772#M64887</guid>
      <dc:creator>fengyuwuzu</dc:creator>
      <dc:date>2016-10-14T19:26:53Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304773#M64888</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/56807"&gt;@fengyuwuzu&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;that is all the data I have. my code is like this but there are errors. can anyone help me improve the code?&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;I believe that we have mentioned more than once that you should include the log of the code &lt;STRONG&gt;with&lt;/STRONG&gt; the error messages.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The IN operator in SAS currently does not support a variable as the target but only literal values. And IN will not do substringing at all.&lt;/P&gt;
&lt;P&gt;To search for a value within a string use either INDEX if the target may not be considered a word or FINDW&lt;/P&gt;</description>
      <pubDate>Fri, 14 Oct 2016 19:41:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304773#M64888</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2016-10-14T19:41:43Z</dc:date>
    </item>
    <item>
      <title>Re: how to code this efficiently?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304774#M64889</link>
      <description>&lt;P&gt;&amp;nbsp;I didn't convert cycle/day to numbers so they're not sorting correctly. Convert them to numeric variables or look at the different sort options so they'll sort correctly and then the rest of the code will work.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-SPOILER&gt;data have;&lt;BR /&gt;input string $30.;&lt;BR /&gt;cards;&lt;BR /&gt;CYCLE1 DAY1 &lt;BR /&gt;CYCLE1 DAY8 &lt;BR /&gt;CYCLE1 DAY15 &lt;BR /&gt;CYCLE1 DAY22 &lt;BR /&gt;CYCLE1 DAY29 &lt;BR /&gt;CYCLE1 DAY36&lt;BR /&gt;CYCLE2 DAY1 &lt;BR /&gt;CYCLE2 DAY8 &lt;BR /&gt;CYCLE2 DAY15 &lt;BR /&gt;CYCLE2 DAY22 &lt;BR /&gt;CYCLE2 DAY29 &lt;BR /&gt;CYCLE2 DAY36 &lt;BR /&gt;CYCLE3 DAY1 &lt;BR /&gt;CYCLE3 DAY8 &lt;BR /&gt;CYCLE3 DAY15 &lt;BR /&gt;CYCLE3 DAY22 &lt;BR /&gt;CYCLE3 DAY29&lt;BR /&gt;;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;data have2;&lt;BR /&gt;set have;&lt;BR /&gt;&lt;BR /&gt;cycle=input(substr(scan(string, 1), 6), 8.);&lt;BR /&gt;day = input(substr(scan(string, 2), 4), 8.);&lt;BR /&gt;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;proc sort data=have2;&lt;BR /&gt;by cycle day;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;data want;&lt;BR /&gt;set have2;&lt;BR /&gt;by cycle;&lt;BR /&gt;if first.cycle then Index=cycle*10 + 1;&lt;BR /&gt;else index+1;&lt;BR /&gt;&lt;BR /&gt;want_field = 1000+index;&lt;BR /&gt;&lt;BR /&gt;drop cycle day index;&lt;BR /&gt;&lt;BR /&gt;run;&lt;/LI-SPOILER&gt;</description>
      <pubDate>Fri, 14 Oct 2016 19:33:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/how-to-code-this-efficiently/m-p/304774#M64889</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-10-14T19:33:49Z</dc:date>
    </item>
  </channel>
</rss>

