<?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 Hour Difference with Data Spread Over 4 Columns in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787019#M251375</link>
    <description>&lt;P&gt;I have the following start/end dates and times in separate columns in the following formats.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;STRONG&gt;start_date&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;start_time&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;end_date&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;end_time&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-26&lt;/TD&gt;&lt;TD&gt;1853&lt;/TD&gt;&lt;TD&gt;2020-01-06&lt;/TD&gt;&lt;TD&gt;1525&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;1530&lt;/TD&gt;&lt;TD&gt;2019-12-31&lt;/TD&gt;&lt;TD&gt;1005&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-31&lt;/TD&gt;&lt;TD&gt;1006&lt;/TD&gt;&lt;TD&gt;2020-01-28&lt;/TD&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;2052&lt;/TD&gt;&lt;TD&gt;2020-01-02&lt;/TD&gt;&lt;TD&gt;2006&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;843&lt;/TD&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;909&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What is the most efficient way to return the difference in hours for each of the events? I need to include the decimal as well.&lt;/P&gt;</description>
    <pubDate>Tue, 21 Dec 2021 21:41:18 GMT</pubDate>
    <dc:creator>cobba</dc:creator>
    <dc:date>2021-12-21T21:41:18Z</dc:date>
    <item>
      <title>Hour Difference with Data Spread Over 4 Columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787019#M251375</link>
      <description>&lt;P&gt;I have the following start/end dates and times in separate columns in the following formats.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;STRONG&gt;start_date&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;start_time&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;end_date&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;end_time&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-26&lt;/TD&gt;&lt;TD&gt;1853&lt;/TD&gt;&lt;TD&gt;2020-01-06&lt;/TD&gt;&lt;TD&gt;1525&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;1530&lt;/TD&gt;&lt;TD&gt;2019-12-31&lt;/TD&gt;&lt;TD&gt;1005&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-31&lt;/TD&gt;&lt;TD&gt;1006&lt;/TD&gt;&lt;TD&gt;2020-01-28&lt;/TD&gt;&lt;TD&gt;1002&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;2052&lt;/TD&gt;&lt;TD&gt;2020-01-02&lt;/TD&gt;&lt;TD&gt;2006&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;843&lt;/TD&gt;&lt;TD&gt;2019-12-30&lt;/TD&gt;&lt;TD&gt;909&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What is the most efficient way to return the difference in hours for each of the events? I need to include the decimal as well.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Dec 2021 21:41:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787019#M251375</guid>
      <dc:creator>cobba</dc:creator>
      <dc:date>2021-12-21T21:41:18Z</dc:date>
    </item>
    <item>
      <title>Re: Hour Difference with Data Spread Over 4 Columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787020#M251376</link>
      <description>&lt;P&gt;I'm not really sure what calculation you really want to do. Do you want the hours between the end date/time of one event and the start date/time of the next event? Or do you want the hours between the start and end? Or something else?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Dec 2021 21:51:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787020#M251376</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2021-12-21T21:51:53Z</dc:date>
    </item>
    <item>
      <title>Re: Hour Difference with Data Spread Over 4 Columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787021#M251377</link>
      <description>Looking for the difference between the values accross the rows. Each row is independent from each other so no need to calculate the difference between rows.</description>
      <pubDate>Tue, 21 Dec 2021 21:52:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787021#M251377</guid>
      <dc:creator>cobba</dc:creator>
      <dc:date>2021-12-21T21:52:31Z</dc:date>
    </item>
    <item>
      <title>Re: Hour Difference with Data Spread Over 4 Columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787022#M251378</link>
      <description>1. Create two datetime fields (one for start and one for end) - use DHMS function. May need to do some type conversions but you haven't provided the data types/formats for each column. &lt;BR /&gt;2. Subtract the two &lt;BR /&gt;3. Format the variable as a time for hours/minutes. If you need 25.5 hours which is 25:30 then you'll need to do some basic math there as well. &lt;BR /&gt;&lt;BR /&gt;If you need help with code, please provide sample data in the form of a data step ensuring that your data types match your data types. That's usually the biggest issue with these types of questions.</description>
      <pubDate>Tue, 21 Dec 2021 22:10:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787022#M251378</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2021-12-21T22:10:33Z</dc:date>
    </item>
    <item>
      <title>Re: Hour Difference with Data Spread Over 4 Columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787028#M251383</link>
      <description>&lt;P&gt;This is how the data is formatted.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;data hourdif2;
input  admission_dte YYMMDD10.
		admission_tme BEST6.
		separation_dte YYMMDD10.
		separation_tme BEST6.;
format  admission_dte YYMMDD10.
		admission_tme BEST6.
		separation_dte YYMMDD10.
		separation_tme BEST6.;
datalines;
2019-12-26	1853	2020-01-06	1525
2019-12-30	1530	2019-12-31	1005
2019-12-31	1006	2020-01-28	1002
2019-12-30	2052	2020-01-02	2006
2019-12-30  843 2019-12-30 909
;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;The dates are as dates but the time is either a 3 or 4 digit integer&lt;/P&gt;</description>
      <pubDate>Tue, 21 Dec 2021 23:37:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787028#M251383</guid>
      <dc:creator>cobba</dc:creator>
      <dc:date>2021-12-21T23:37:24Z</dc:date>
    </item>
    <item>
      <title>Re: Hour Difference with Data Spread Over 4 Columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787031#M251386</link>
      <description>&lt;P&gt;What time do you think the number 1,853 represents?&amp;nbsp; To you want that to mean 18:53 ?&lt;/P&gt;
&lt;P&gt;Let's assume do.&lt;/P&gt;
&lt;P&gt;You could fix that using HMS() function and INT() and MOD() functions to get the number of hours and minutes from those strange integers.&lt;/P&gt;
&lt;P&gt;Once you have DATE and TIME values you can make DATETIME values using DHMS() function.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
  input admission_dte :YYMMDD10. admission_tme separation_dte :YYMMDD10. separation_tme ;
  format admission_dte YYMMDD10. separation_dte YYMMDD10. ;
datalines;
2019-12-26 1853 2020-01-06 1525
2019-12-30 1530 2019-12-31 1005
2019-12-31 1006 2020-01-28 1002
2019-12-30 2052 2020-01-02 2006
2019-12-30  843 2019-12-30  909
;

data want;
  set have;
  admission_tme = hms(int(admission_tme/100),mod(admission_tme,100),0);
  separation_tme = hms(int(separation_tme/100),mod(separation_tme,100),0);

  admission_dtm = dhms(admission_dte,0,0,admission_tme);
  separation_dtm = dhms(separation_dte,0,0,separation_tme);
  duration = separation_dtm - admission_dtm;
  format  admission_dtm separation_dtm datetime19. duration time12. admission_tme separation_tme time5.; 
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Results&lt;/P&gt;
&lt;PRE&gt;admission_  admission_  separation_  separation_
   dte         tme          dte          tme          admission_dtm     separation_dtm  duration

2019-12-26    18:53     2020-01-06      15:25    26DEC2019:18:53:00 06JAN2020:15:25:00 260:32:00
2019-12-30    15:30     2019-12-31      10:05    30DEC2019:15:30:00 31DEC2019:10:05:00  18:35:00
2019-12-31    10:06     2020-01-28      10:02    31DEC2019:10:06:00 28JAN2020:10:02:00 671:56:00
2019-12-30    20:52     2020-01-02      20:06    30DEC2019:20:52:00 02JAN2020:20:06:00  71:14:00
2019-12-30     8:43     2019-12-30       9:09    30DEC2019:08:43:00 30DEC2019:09:09:00   0:26:00


&lt;/PRE&gt;</description>
      <pubDate>Tue, 21 Dec 2021 23:51:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787031#M251386</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2021-12-21T23:51:00Z</dc:date>
    </item>
    <item>
      <title>Re: Hour Difference with Data Spread Over 4 Columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787032#M251387</link>
      <description>&lt;P&gt;Thats it. Yes the integers represent 24hr time.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Dec 2021 23:52:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Hour-Difference-with-Data-Spread-Over-4-Columns/m-p/787032#M251387</guid>
      <dc:creator>cobba</dc:creator>
      <dc:date>2021-12-21T23:52:16Z</dc:date>
    </item>
  </channel>
</rss>

