<?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: Format for float using Input in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466249#M285280</link>
    <description>&lt;P&gt;How do I convert it so the next line will work with it?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;time_to_graduation = input(graduation_period, 4.) - input(cohort, 4.);&lt;BR /&gt; if(time_to_graduation * 100 - input(graduation_period, 8.) - input(cohort, 8.) = 90) then time_to_graduation = time_to_graduation + .33;&lt;/P&gt;</description>
    <pubDate>Wed, 30 May 2018 20:49:49 GMT</pubDate>
    <dc:creator>DavidPhillips2</dc:creator>
    <dc:date>2018-05-30T20:49:49Z</dc:date>
    <item>
      <title>Format for float using Input</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466239#M285276</link>
      <description>&lt;P&gt;Why does this produce .03 instead of 3?&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;proc sql;
create table test (
graduation_period varchar(6),
cohort varchar(6)
);

insert into test (graduation_period, cohort) values ("201120", "200810");
quit;
data outputTable; set test;
time_to_graduation = input(substr(graduation_period, 1,4), 6.2) - input(substr(cohort, 1,4), 6.2);
run;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I'm trying to run this after.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;proc sql;
create table test (
graduation_period varchar(6),
cohort varchar(6)
);

insert into test (graduation_period, cohort) values ("201120", "200810");
quit;
data outputTable; set test;
time_to_graduation = input(substr(graduation_period, 1,4), 6.2) - input(substr(cohort, 1,4), 6.2);

if(time_to_graduation * 100 - input(graduation_period, 8.) - input(cohort, 8.) = 90) then time_to_graduation = time_to_graduation + .33;
if(time_to_graduation * 100 - input(graduation_period, 8.) - input(cohort, 8.) = 20) then time_to_graduation = time_to_graduation + .33;
if(time_to_graduation * 100 - input(graduation_period, 8.) - input(cohort, 8.) = 80) then time_to_graduation = time_to_graduation + .66;
if(time_to_graduation * 100 - input(graduation_period, 8.) - input(cohort, 8.) = 10) then time_to_graduation = time_to_graduation + .66;
run;&lt;/PRE&gt;</description>
      <pubDate>Wed, 30 May 2018 20:33:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466239#M285276</guid>
      <dc:creator>DavidPhillips2</dc:creator>
      <dc:date>2018-05-30T20:33:20Z</dc:date>
    </item>
    <item>
      <title>Re: Format for float using Input</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466244#M285277</link>
      <description>&lt;P&gt;You're forcing the last two digits to be a fraction. Why not just use:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data outputTable; set test;
  time_to_graduation = input(substr(graduation_period, 1,4), 4.) - input(substr(cohort, 1,4), 4.);
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 30 May 2018 20:43:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466244#M285277</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2018-05-30T20:43:04Z</dc:date>
    </item>
    <item>
      <title>Re: Format for float using Input</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466245#M285278</link>
      <description>&lt;P&gt;That works for that line but,&amp;nbsp; I need to add the value from that to the fraction on the next part.&lt;/P&gt;</description>
      <pubDate>Wed, 30 May 2018 20:44:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466245#M285278</guid>
      <dc:creator>DavidPhillips2</dc:creator>
      <dc:date>2018-05-30T20:44:41Z</dc:date>
    </item>
    <item>
      <title>Re: Format for float using Input</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466247#M285279</link>
      <description>&lt;P&gt;That's the right issue.&amp;nbsp; And as long as you are doing that, you don't need SUBSTR:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;time_to_graduation &lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;input&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;(g&lt;/SPAN&gt;raduation_period&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN class="token number"&gt;4&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;)&lt;/SPAN&gt; &lt;SPAN class="token operator"&gt;-&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;input&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;(&lt;/SPAN&gt;cohort&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token number"&gt;4&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;)&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 30 May 2018 20:45:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466247#M285279</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2018-05-30T20:45:52Z</dc:date>
    </item>
    <item>
      <title>Re: Format for float using Input</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466249#M285280</link>
      <description>&lt;P&gt;How do I convert it so the next line will work with it?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;time_to_graduation = input(graduation_period, 4.) - input(cohort, 4.);&lt;BR /&gt; if(time_to_graduation * 100 - input(graduation_period, 8.) - input(cohort, 8.) = 90) then time_to_graduation = time_to_graduation + .33;&lt;/P&gt;</description>
      <pubDate>Wed, 30 May 2018 20:49:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466249#M285280</guid>
      <dc:creator>DavidPhillips2</dc:creator>
      <dc:date>2018-05-30T20:49:49Z</dc:date>
    </item>
    <item>
      <title>Re: Format for float using Input</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466255#M285281</link>
      <description>&lt;P&gt;This worked&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;time_to_graduation = input(graduation_period, 4.) - input(cohort, 4.);&lt;BR /&gt; if(input(graduation_period, 6.) - input(cohort, 6.) - time_to_graduation * 100) = 10 then do;&lt;BR /&gt; time_to_graduation = time_to_graduation + .66;&lt;BR /&gt; end;&lt;/P&gt;</description>
      <pubDate>Wed, 30 May 2018 21:02:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466255#M285281</guid>
      <dc:creator>DavidPhillips2</dc:creator>
      <dc:date>2018-05-30T21:02:24Z</dc:date>
    </item>
    <item>
      <title>Re: Format for float using Input</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466257#M285282</link>
      <description>&lt;P&gt;You might provide exactly what you are attempting to do. Since this looks like date manipulation and comparisons then it may be that intck and/or intnx with some actual date values instead with offsets may be of use. Though we would need some explanation of what 201120 and 200810 actually represent. The first four digits look like years but&amp;nbsp;the 20 in 201120 is not intuitively obvious.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/5059"&gt;@DavidPhillips2&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;How do I convert it so the next line will work with it?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;time_to_graduation = input(graduation_period, 4.) - input(cohort, 4.);&lt;BR /&gt; if(time_to_graduation * 100 - input(graduation_period, 8.) - input(cohort, 8.) = 90) then time_to_graduation = time_to_graduation + .33;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The 8 format isn't going to do will reading 6 characters...&lt;/P&gt;
&lt;P&gt;Your calculation has a number of magic numbers. What is the purpose of the 100 and the .33?&lt;/P&gt;
&lt;P&gt;As a minimum I think we need at least 2 if not a couple more worked examples showing the expected result.&lt;/P&gt;</description>
      <pubDate>Wed, 30 May 2018 21:11:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Format-for-float-using-Input/m-p/466257#M285282</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2018-05-30T21:11:58Z</dc:date>
    </item>
  </channel>
</rss>

