<?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: subtract the values in a dataset in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/470302#M285609</link>
    <description>&lt;P&gt;This works also! Thank you!&lt;/P&gt;</description>
    <pubDate>Thu, 14 Jun 2018 13:23:58 GMT</pubDate>
    <dc:creator>kfbaker0206</dc:creator>
    <dc:date>2018-06-14T13:23:58Z</dc:date>
    <item>
      <title>subtract the values in a dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469957#M285603</link>
      <description>&lt;P&gt;I would like sas to subtract the second start date minus the first end date based on ID. For example there is an ID with the number 1 with two different start dates and end dates. I would like for ID 1 to subtract the SECOND start date (17May2017) from the FIRST end date (09MAR2015). This was from an excel file. Please see file below.&amp;nbsp;I would prefer SAS code as opposed to sql. I&amp;nbsp;am new to sas and I do not know where to begin. Also the original data has about 4K IDs. I have SAS EG 7.15.&amp;nbsp;Any help would be greatly appreciated. Thanks. &amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;startYear&lt;/TD&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;Duplicates&lt;/TD&gt;&lt;TD&gt;startDate&lt;/TD&gt;&lt;TD&gt;endDate&lt;/TD&gt;&lt;TD&gt;2nd Start Date-First End Date&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2012&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;04Sep2014&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;&lt;U&gt;09Mar2015&lt;/U&gt;&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;D2-E1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2018&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;&lt;U&gt;17May2017&lt;/U&gt;&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;26Nov2017&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;2012&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;03Jan2014&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;&lt;U&gt;15Jun2014&lt;/U&gt;&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;D5-E4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;2018&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;&lt;U&gt;26May2017&lt;/U&gt;&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;08Nov2017&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;2016&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;03Jan2015&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;&lt;U&gt;16Jun2015&lt;/U&gt;&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;D7-E6&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;2017&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;&lt;U&gt;02May2017&lt;/U&gt;&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;14Oct2017&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Wed, 13 Jun 2018 15:19:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469957#M285603</guid>
      <dc:creator>kfbaker0206</dc:creator>
      <dc:date>2018-06-13T15:19:16Z</dc:date>
    </item>
    <item>
      <title>Re: subtract the values in a dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469959#M285604</link>
      <description>&lt;P&gt;Are your ID values consistently sets of 2 like your sample?&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jun 2018 15:25:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469959#M285604</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-06-13T15:25:57Z</dc:date>
    </item>
    <item>
      <title>Re: subtract the values in a dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469960#M285605</link>
      <description>&lt;P&gt;Assuming you have only two records for each ID and everything is sorted properly&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;UNTESTED CODE&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
    set have;
    by id;
    prev_enddate=lag(enddate);
    if last.id then delta=startdate-prev_enddate;
run;    &lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jun 2018 15:29:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469960#M285605</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2018-06-13T15:29:41Z</dc:date>
    </item>
    <item>
      <title>Re: subtract the values in a dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469964#M285606</link>
      <description>&lt;P&gt;Well then, I would also go with the same assumption &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards truncover;
input obs startYear	ID	Duplicates	(startDate		endDate) (:date9.);
format startDate		endDate date9.;
cards;
1	2012	1	2	04Sep2014	09Mar2015	
2	2018	1	. 	17May2017	26Nov2017
3	2012	2	2	03Jan2014	15Jun2014	
4	2018	2	. 	26May2017	08Nov2017
5	2016	3	2	03Jan2015	16Jun2015
6	2017	3	. 	02May2017
;

proc sql;
create table want as
select *, max(startDate) - min(endDate)+Duplicates-Duplicates as delta
from have
group by id
order by id, startYear;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 13 Jun 2018 15:41:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469964#M285606</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-06-13T15:41:05Z</dc:date>
    </item>
    <item>
      <title>Re: subtract the values in a dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469973#M285607</link>
      <description>&lt;P&gt;This program calculates differences for the entire sequence of records, but sets the difference to missing for the first record of each id:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards truncover;
input obs startYear	ID	Duplicates	(startDate		endDate) (:date9.);
format startDate		endDate date9.;
cards;
1	2012	1	2	04Sep2014	09Mar2015	
2	2018	1	. 	17May2017	26Nov2017
3	2012	2	2	03Jan2014	15Jun2014	
4	2018	2	. 	26May2017	08Nov2017
5	2016	3	2	03Jan2015	16Jun2015
6	2017	3	. 	02May2017
;
data want;
  set have;
  by id;
  difference=startdate-lag(enddate);
  if first.id then difference=.;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jun 2018 15:54:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/469973#M285607</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2018-06-13T15:54:57Z</dc:date>
    </item>
    <item>
      <title>Re: subtract the values in a dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/470048#M285608</link>
      <description>&lt;P&gt;No they are 2,3,4,5&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jun 2018 18:41:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/470048#M285608</guid>
      <dc:creator>kfbaker0206</dc:creator>
      <dc:date>2018-06-13T18:41:47Z</dc:date>
    </item>
    <item>
      <title>Re: subtract the values in a dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/470302#M285609</link>
      <description>&lt;P&gt;This works also! Thank you!&lt;/P&gt;</description>
      <pubDate>Thu, 14 Jun 2018 13:23:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtract-the-values-in-a-dataset/m-p/470302#M285609</guid>
      <dc:creator>kfbaker0206</dc:creator>
      <dc:date>2018-06-14T13:23:58Z</dc:date>
    </item>
  </channel>
</rss>

