<?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: Calculating Maximum within one hour for a Variable... in ODS and Base Reporting</title>
    <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177262#M12596</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;what is purpose of ':' in your input statement?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 22 Jan 2015 11:38:50 GMT</pubDate>
    <dc:creator>Babloo</dc:creator>
    <dc:date>2015-01-22T11:38:50Z</dc:date>
    <item>
      <title>Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177252#M12586</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Time&amp;nbsp;&amp;nbsp; library&amp;nbsp; Var1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Var2&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 00:00&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 00:15&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 00:30&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 00:45&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01:00&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01:15&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01:30&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01:45&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;09/01/2015&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02:00&amp;nbsp; xxxxx&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could somebody please throw me idea how to calculate maximum value for Variable "Var1" &amp;amp; "Var2" &lt;/P&gt;&lt;P&gt;within One hour of Boundaries so for example on 09/01/2015 between 00:00 - 00:45 for values(2,1,5,0)&lt;/P&gt;&lt;P&gt;the output should be 5 ...Whereas for Var2 it should be 10..&lt;/P&gt;&lt;P&gt;Then it should start boundaries for 01:00 - 01:45 and extract out maximum value&amp;nbsp; so "Var1" will have&lt;/P&gt;&lt;P&gt;11 and "Var2" will have 9 ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Important is the boundaries of an hour where data is in the 15min interval ...and we may have possibility&lt;/P&gt;&lt;P&gt;where for certain interval data may be missing however while setting boundaries we still should consider&lt;/P&gt;&lt;P&gt;one hour...so just for example may possible it has 01:30 values can be missing however if so it still&lt;/P&gt;&lt;P&gt;just consider boundary of 01:00 - 01:45...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 10 Jan 2015 08:00:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177252#M12586</guid>
      <dc:creator>rkumar23</dc:creator>
      <dc:date>2015-01-10T08:00:48Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177253#M12587</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;See below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; infile datalines truncover;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input Date:ddmmyy. Time:time. library $ (Var1 Var2) (:8.);&lt;/P&gt;&lt;P&gt;&amp;nbsp; format date date9. time time5. datetime dt_interval_start datetime.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; datetime=86400*date + time;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dt_interval_start=intnx('dthour',datetime,0,'b');&lt;/P&gt;&lt;P&gt;&amp;nbsp; datalines;&lt;/P&gt;&lt;P&gt;09/01/2015 00:00 xxxxx 2 6&lt;/P&gt;&lt;P&gt;09/01/2015 00:15 xxxxx 1 9&lt;/P&gt;&lt;P&gt;09/01/2015 00:30 xxxxx 5 8&lt;/P&gt;&lt;P&gt;09/01/2015 00:45 xxxxx 0 10&lt;/P&gt;&lt;P&gt;09/01/2015 01:00 xxxxx 7 6&lt;/P&gt;&lt;P&gt;09/01/2015 01:15 xxxxx 9 6&lt;/P&gt;&lt;P&gt;09/01/2015 01:30 xxxxx 10 0&lt;/P&gt;&lt;P&gt;09/01/2015 01:45 xxxxx 11 9&lt;/P&gt;&lt;P&gt;09/01/2015 02:00 xxxxx 18 10&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table want1 as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select *, max(var1) as max_var1, max(var2) as max_var2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; group by dt_interval_start&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table want2 as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select distinct dt_interval_start, max(var1) as max_var1, max(var2) as max_var2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; group by dt_interval_start&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* without dt_interval_start pre-calculated in a previous data step */&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table want4 as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select distinct&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; intnx('dthour',(86400*date + time),0,'b') as dt_interval_start format=datetime.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; , max(Var1) as max_var1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; , max(Var2) as max_var2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; group by calculated dt_interval_start&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* or if your data is already sorted */&lt;/P&gt;&lt;P&gt;data want3;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by dt_interval_start;&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain max_var1 max_var2;&lt;/P&gt;&lt;P&gt;&amp;nbsp; max_var1=max(max_var1,var1);&lt;/P&gt;&lt;P&gt;&amp;nbsp; max_var2=max(max_var2,var2);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last.dt_interval_start then&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call missing(max_var1,max_var2);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 10 Jan 2015 10:17:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177253#M12587</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2015-01-10T10:17:25Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177254#M12588</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is this something you want? Try and test!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;set have; /*your input dataset*/&lt;/P&gt;&lt;P&gt;array array1(10)_temporary_;&lt;/P&gt;&lt;P&gt;array array2(10)_temporary_;&lt;/P&gt;&lt;P&gt;if minute(time)=0 and second(time)=0 then do;&lt;/P&gt;&lt;P&gt;call missing (of array1{*});&lt;/P&gt;&lt;P&gt;call missing (of array2{*});&lt;/P&gt;&lt;P&gt;count=0;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;count+1;&lt;/P&gt;&lt;P&gt;array1(count)=var1;&lt;/P&gt;&lt;P&gt;array2(count)=var2;&lt;/P&gt;&lt;P&gt;if Minute( time )=45 then do;&lt;/P&gt;&lt;P&gt;var1=max(of array1&lt;LI&gt;);&lt;/LI&gt;&lt;/P&gt;&lt;P&gt;var2=max(of array2&lt;LI&gt;);&lt;/LI&gt;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;drop count;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am not sure if I understood the question well enough. My apologies if that didn't give you what you want.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen Srinivasan&lt;/P&gt;&lt;P&gt;L&amp;amp;T Infotech&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 10 Jan 2015 10:23:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177254#M12588</guid>
      <dc:creator>naveen_srini</dc:creator>
      <dc:date>2015-01-10T10:23:22Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177255#M12589</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Like Patrick's code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data have;
&amp;nbsp; infile datalines truncover;
&amp;nbsp; input Date:ddmmyy. Time:time. library $ (Var1 Var2) (:8.);
&amp;nbsp; format date date9. time time5. ;
&amp;nbsp; datalines;
09/01/2015 00:00 xxxxx 2 6
09/01/2015 00:15 xxxxx 1 9
09/01/2015 00:30 xxxxx 5 8
09/01/2015 00:45 xxxxx 0 10
09/01/2015 01:00 xxxxx 7 6
09/01/2015 01:15 xxxxx 9 6
09/01/2015 01:30 xxxxx 10 0
09/01/2015 01:45 xxxxx 11 9
09/01/2015 02:00 xxxxx 18 10
;
run;
 
proc sql;
&amp;nbsp; create table want1 as
&amp;nbsp;&amp;nbsp;&amp;nbsp; select *, max(var1) as max_var1, max(var2) as max_var2
&amp;nbsp;&amp;nbsp;&amp;nbsp; from have
&amp;nbsp;&amp;nbsp;&amp;nbsp; group by date,hour(time)
&amp;nbsp;&amp;nbsp;&amp;nbsp; ;
quit;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Xia Keshan&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: xia keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 10 Jan 2015 13:17:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177255#M12589</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2015-01-10T13:17:31Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177256#M12590</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yet, another option using SAS built-in procs, say if we have datetime variable like the one in &lt;A __default_attr="12296" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt;:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-family: 'Courier New';"&gt;data&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; have;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;infile&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;datalines&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;truncover&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; Date:&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: teal; background: white;"&gt;ddmmyy.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; Time:&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: teal; background: white;"&gt;time.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; library $ (Var1 Var2) (:&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-family: 'Courier New';"&gt;8.&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; date &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: teal; background: white;"&gt;date9.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; time &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: teal; background: white;"&gt;time5.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; datetime dt_interval_start &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: teal; background: white;"&gt;datetime.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; datetime=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-family: 'Courier New';"&gt;86400&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;*date + time;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dt_interval_start=intnx(&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: purple; background: white;"&gt;'dthour'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;,datetime,&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: purple; background: white;"&gt;'b'&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;put&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; datetime= &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: teal; background: white;"&gt;datetime11.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;datalines&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 00:00 xxxxx 2 6&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 00:15 xxxxx 1 9&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 00:30 xxxxx 5 8&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 00:45 xxxxx 0 10&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 01:00 xxxxx 7 6&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 01:15 xxxxx 9 6&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 01:30 xxxxx 10 0&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 01:45 xxxxx 11 9&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;09/01/2015 02:00 xxxxx 18 10&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-family: 'Courier New';"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: navy; background: white; font-family: 'Courier New';"&gt;summary&lt;/STRONG&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;=have;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;var&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; var1 var2;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; datetime;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt; datetime &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: teal; background: white;"&gt;datetime11.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;output&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;=want (&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;where&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;=(_type_=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-family: 'Courier New';"&gt;1&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;)) &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue; background: white;"&gt;max&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;=;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; background: white; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 11 Jan 2015 00:22:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177256#M12590</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2015-01-11T00:22:48Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177257#M12591</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;why not use HOUR as a classification ??&lt;/P&gt;&lt;P&gt;it is by date and hour!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data step . . . .&lt;/P&gt;&lt;P&gt;hhour=hour(time);&lt;/P&gt;&lt;P&gt;. . . .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;proc &lt;/SPAN&gt;&lt;STRONG style=": ; color: #000080; font-size: 10pt; font-family: Courier New;"&gt;summary&lt;/STRONG&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;=have &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;missing&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;nway&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; date hhour;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;var&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; var1 var2;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;output&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;=want (drop=_:) &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;max&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;=;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Jan 2015 15:05:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177257#M12591</guid>
      <dc:creator>Jaheuk</dc:creator>
      <dc:date>2015-01-12T15:05:39Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177258#M12592</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Good Point!&amp;nbsp; Then I guess you don't even need additional hhour=hour(time), instead, just:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc summary data=have missing nway;&lt;/P&gt;&lt;P&gt;class date time;&lt;/P&gt;&lt;P&gt;var var1 var2;&lt;/P&gt;&lt;P&gt;format time time2.;&lt;/P&gt;&lt;P&gt;output out=want (drop=_:) max=;&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Jan 2015 15:12:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177258#M12592</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2015-01-12T15:12:39Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177259#M12593</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a data step solution:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;BR /&gt;input Date ddmmyy10. Time :time5. library $ Var1 Var2;&lt;BR /&gt;format date date9. time time5.;&lt;BR /&gt;datalines;&lt;BR /&gt;09/01/2015 00:00 xxxxx 2 6&lt;BR /&gt;09/01/2015 00:15 xxxxx 1 9&lt;BR /&gt;09/01/2015 00:30 xxxxx 5 8&lt;BR /&gt;09/01/2015 00:45 xxxxx 0 10&lt;BR /&gt;09/01/2015 01:00 xxxxx 7 6&lt;BR /&gt;09/01/2015 01:15 xxxxx 9 6&lt;BR /&gt;09/01/2015 01:30 xxxxx 10 0&lt;BR /&gt;09/01/2015 01:45 xxxxx 11 9&lt;BR /&gt;09/01/2015 02:00 xxxxx 18 10&lt;BR /&gt;10/01/2015 03:00 xxxxx 7 6&lt;BR /&gt;10/01/2015 03:15 xxxxx 9 6&lt;BR /&gt;10/01/2015 03:30 xxxxx 10 0&lt;BR /&gt;10/01/2015 03:45 xxxxx 11 9&lt;BR /&gt;10/01/2015 04:45 xxxxx 12 19&lt;BR /&gt;;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc sort data=have;&lt;BR /&gt;by date;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;data want (keep=dateout hourinterval maxvar1 maxvar2) ;&lt;BR /&gt;set have end=last;&lt;BR /&gt;by date;&lt;/P&gt;&lt;P&gt;retain dateout hourflag maxvar1 maxvar2;&lt;BR /&gt;format dateout date9.;&lt;/P&gt;&lt;P&gt;if first.date then &lt;BR /&gt; do;&lt;BR /&gt;&amp;nbsp; if _N_ ne 1 then do;*write to output when first date changes;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; hourinterval=cats(hourflag||"-"||left(hour(time)));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; output;&lt;BR /&gt;&amp;nbsp; end;&lt;BR /&gt;&amp;nbsp; dateout=date;&lt;BR /&gt;&amp;nbsp; maxvar1=var1;&lt;BR /&gt;&amp;nbsp; maxvar2=var2;&lt;BR /&gt;&amp;nbsp; hourflag=hour(time);&lt;BR /&gt;&amp;nbsp; put hourflag=;&lt;BR /&gt; end;&lt;BR /&gt;else if hourflag=hour(time) then &lt;BR /&gt; do;&lt;BR /&gt;&amp;nbsp; if maxvar1 lt var1 then maxvar1=var1;&lt;BR /&gt;&amp;nbsp; if maxvar2 lt var2 then maxvar2=var2;&lt;BR /&gt; end;&lt;BR /&gt;else if hourflag ne hour(time) then &lt;BR /&gt; do;&lt;BR /&gt;&amp;nbsp; put _N_=;&lt;BR /&gt;&amp;nbsp; hourinterval=cats(hourflag||"-"||left(hour(time)));&lt;BR /&gt;&amp;nbsp; output;&lt;BR /&gt;&amp;nbsp; hourflag=hour(time);&lt;BR /&gt;&amp;nbsp; maxvar1=var1;&lt;BR /&gt;&amp;nbsp; maxvar2=var2;&lt;BR /&gt; end;&lt;/P&gt;&lt;P&gt;/*write last record*/&lt;BR /&gt;if last then &lt;BR /&gt; do;&lt;BR /&gt;&amp;nbsp; hourinterval=cats(hourflag||"-"||left(hour(time)));&lt;BR /&gt;&amp;nbsp; output;&lt;BR /&gt; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Jan 2015 16:06:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177259#M12593</guid>
      <dc:creator>Loko</dc:creator>
      <dc:date>2015-01-12T16:06:25Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177260#M12594</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I used&lt;/P&gt;&lt;P&gt;&lt;SPAN class="j-status-levels"&gt;&lt;IMG alt="Master" class="jiveImage" src="https://communities.sas.com/5.0.2/images/status/statusicon-51.gif" title="Master" /&gt; &lt;/SPAN&gt;&lt;SPAN class="j-post-author "&gt;&lt;STRONG&gt;&lt;A _jive_internal="true" class="jiveTT-hover-user jive-username-link" data-avatarid="1025" data-externalid="" data-presence="null" data-userid="5068" data-username="Hai.kuo" href="https://communities.sas.com/people/Hai.kuo" id="jive-506836491076706693186"&gt;Hai.kuo&lt;/A&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp; method which really worked for me...Thanks all for your reply....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Jan 2015 01:08:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177260#M12594</guid>
      <dc:creator>rkumar23</dc:creator>
      <dc:date>2015-01-13T01:08:00Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177261#M12595</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;please mark this as "answered" so I receive "points" &lt;img id="smileywink" class="emoticon emoticon-smileywink" src="https://communities.sas.com/i/smilies/16x16_smiley-wink.png" alt="Smiley Wink" title="Smiley Wink" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Jan 2015 08:33:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177261#M12595</guid>
      <dc:creator>Jaheuk</dc:creator>
      <dc:date>2015-01-22T08:33:18Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating Maximum within one hour for a Variable...</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177262#M12596</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;what is purpose of ':' in your input statement?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Jan 2015 11:38:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Calculating-Maximum-within-one-hour-for-a-Variable/m-p/177262#M12596</guid>
      <dc:creator>Babloo</dc:creator>
      <dc:date>2015-01-22T11:38:50Z</dc:date>
    </item>
  </channel>
</rss>

