<?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: date frequency min value in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475173#M122169</link>
    <description>&lt;P&gt;I am sorry, i have read your post 3 times and it still doesn't make a single bit of sense to me.&amp;nbsp; None of what appears in the second set of data appears to have any connection to any of the data points in the first set of data other than product?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps, and am just guessing somewhat here, you want to expand your first set of data out by date so something like:&lt;/P&gt;
&lt;PRE&gt;data want (drop=on_sale_date off_sale_date);
  set have;
  do date=on_sale_date to off_sale_date;
    output;
  end;
run;&lt;/PRE&gt;
&lt;P&gt;Then you can sort that data by date.&amp;nbsp; Then something like:&lt;/P&gt;
&lt;PRE&gt;data want (drop=price);
  set want;
  if lag(date)=date then do;
    actual_value=mean(price,lag(price));
    output;
  end;
  else do;
    actual_value=price;
    output;
  end;
run;&lt;/PRE&gt;
&lt;P&gt;Please post test data in the for of a datastep in future.&lt;/P&gt;</description>
    <pubDate>Tue, 03 Jul 2018 13:47:52 GMT</pubDate>
    <dc:creator>RW9</dc:creator>
    <dc:date>2018-07-03T13:47:52Z</dc:date>
    <item>
      <title>date frequency min value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475169#M122167</link>
      <description>&lt;P&gt;I have mentioned below dataset in SAS.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Table-1&lt;/STRONG&gt;&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Sr No&lt;/TD&gt;&lt;TD&gt;PRODUCT&lt;/TD&gt;&lt;TD&gt;ON SALE DATE&lt;/TD&gt;&lt;TD&gt;OFF SALE DATE&lt;/TD&gt;&lt;TD&gt;SELL_PRICE&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;01-Jan-18&lt;/TD&gt;&lt;TD&gt;03-Jan-18&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;02-Jan-18&lt;/TD&gt;&lt;TD&gt;06-Jan-18&lt;/TD&gt;&lt;TD&gt;93&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;04-Jan-18&lt;/TD&gt;&lt;TD&gt;10-Jan-18&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;08-Jan-18&lt;/TD&gt;&lt;TD&gt;10-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;01-Jan-18&lt;/TD&gt;&lt;TD&gt;01-Jan-18&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;01-Jan-18&lt;/TD&gt;&lt;TD&gt;07-Jan-18&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;03-Jan-18&lt;/TD&gt;&lt;TD&gt;04-Jan-18&lt;/TD&gt;&lt;TD&gt;93&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;07-Jan-18&lt;/TD&gt;&lt;TD&gt;09-Jan-18&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;04-Jan-18&lt;/TD&gt;&lt;TD&gt;08-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;03-Jan-18&lt;/TD&gt;&lt;TD&gt;04-Jan-18&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a product list(in this case P1 and P2) and there are many date range for the&amp;nbsp;same product with the&amp;nbsp;different price. The time range can overlap each other for the same product.&lt;/P&gt;&lt;P&gt;My task is to make a dataset which contains a date range which will be the&lt;/P&gt;&lt;P&gt;min of 'ON SALE DATE' and the max of ''OFF SALE DATE".&lt;/P&gt;&lt;P&gt;so for the product, P1 date range will be 1-Jan-2018 to 10-Jan-2018.&lt;/P&gt;&lt;P&gt;and for the product, P2 date range will be 01-Jan-2018 to 09-Jan-2018.&lt;/P&gt;&lt;P&gt;and the price will come which will be minimum for that date. so the dataset will look like below one...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Table-2&lt;/STRONG&gt;&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Sr No&lt;/TD&gt;&lt;TD&gt;PRODUCT&lt;/TD&gt;&lt;TD&gt;Date&lt;/TD&gt;&lt;TD&gt;SELL_PRICE&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;01-Jan-18&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;02-Jan-18&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;03-Jan-18&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;04-Jan-18&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;05-Jan-18&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;06-Jan-18&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;07-Jan-18&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;08-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;09-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;10-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;01-Jan-18&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;02-Jan-18&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;03-Jan-18&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;04-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;05-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;06-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;17&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;07-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;18&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;08-Jan-18&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;19&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;09-Jan-18&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;so if you check&lt;/P&gt;&lt;P&gt;the price for P1 on 1-Jan-2018, there are two prices mentioned for this&lt;/P&gt;&lt;P&gt;first table-Row-1, the price for P1 is 84&lt;/P&gt;&lt;P&gt;First table-Row-Row-5 the price for P1 is 15.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;hence the final price for P1 for 01-Jan-2018 will be 15 which is minimum between (84,15).&lt;/P&gt;&lt;P&gt;check&amp;nbsp;Table-2 and Row-1.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How to write a SAS code for this.&lt;/P&gt;</description>
      <pubDate>Wed, 04 Jul 2018 13:05:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475169#M122167</guid>
      <dc:creator>Srigyan</dc:creator>
      <dc:date>2018-07-04T13:05:55Z</dc:date>
    </item>
    <item>
      <title>Re: date frequency min value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475173#M122169</link>
      <description>&lt;P&gt;I am sorry, i have read your post 3 times and it still doesn't make a single bit of sense to me.&amp;nbsp; None of what appears in the second set of data appears to have any connection to any of the data points in the first set of data other than product?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps, and am just guessing somewhat here, you want to expand your first set of data out by date so something like:&lt;/P&gt;
&lt;PRE&gt;data want (drop=on_sale_date off_sale_date);
  set have;
  do date=on_sale_date to off_sale_date;
    output;
  end;
run;&lt;/PRE&gt;
&lt;P&gt;Then you can sort that data by date.&amp;nbsp; Then something like:&lt;/P&gt;
&lt;PRE&gt;data want (drop=price);
  set want;
  if lag(date)=date then do;
    actual_value=mean(price,lag(price));
    output;
  end;
  else do;
    actual_value=price;
    output;
  end;
run;&lt;/PRE&gt;
&lt;P&gt;Please post test data in the for of a datastep in future.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Jul 2018 13:47:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475173#M122169</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2018-07-03T13:47:52Z</dc:date>
    </item>
    <item>
      <title>Re: date frequency min value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475177#M122170</link>
      <description>&lt;P&gt;my apology, I put the wrong table, modified it again. Please have a look.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Jul 2018 13:58:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475177#M122170</guid>
      <dc:creator>Srigyan</dc:creator>
      <dc:date>2018-07-03T13:58:01Z</dc:date>
    </item>
    <item>
      <title>Re: date frequency min value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475181#M122172</link>
      <description>&lt;P&gt;I think your data doesn't represent your description. If you are expecting anyone in the community to loop through from min(date) to max(date) increment by one and look up the date range and then fetch the min, i'm afraid a better representative sample of your INPUT and a sample of your expected OUTPUT is very much needed.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Basically that will help in testing the developed code against your input sample and test that against the output that you want. Otherwise, I am afraid, i'm not smart enough to make guesses although somebody in the community probably will.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Jul 2018 14:16:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475181#M122172</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-07-03T14:16:05Z</dc:date>
    </item>
    <item>
      <title>Re: date frequency min value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475383#M122241</link>
      <description>&lt;P&gt;I reframed the question, Please check and respond.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Jul 2018 08:50:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475383#M122241</guid>
      <dc:creator>Srigyan</dc:creator>
      <dc:date>2018-07-05T08:50:39Z</dc:date>
    </item>
    <item>
      <title>Re: date frequency min value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475566#M122305</link>
      <description>&lt;P&gt;Ok, let me try and get back to you&lt;/P&gt;</description>
      <pubDate>Thu, 05 Jul 2018 10:47:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475566#M122305</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-07-05T10:47:51Z</dc:date>
    </item>
    <item>
      <title>Re: date frequency min value</title>
      <link>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475623#M122316</link>
      <description>&lt;P&gt;For future questions: please post data as data-steps &lt;span class="lia-unicode-emoji" title=":winking_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 work.have;
   length srno 8 product $ 2 on_sale_date off_sale_date sell_price 8;
   informat on_sale_date off_sale_date anydtdte.;
   format on_sale_date off_sale_date ddmmyyp10.;
   input srno product on_sale_date off_sale_date sell_price;
   datalines;
1 P1 01-Jan-18 03-Jan-18 84
2 P1 02-Jan-18 06-Jan-18 93
3 P1 04-Jan-18 10-Jan-18 46
4 P1 08-Jan-18 10-Jan-18 14
5 P1 01-Jan-18 01-Jan-18 15
6 P2 01-Jan-18 07-Jan-18 84
7 P2 03-Jan-18 04-Jan-18 93
8 P2 07-Jan-18 09-Jan-18 46
9 P2 04-Jan-18 08-Jan-18 14
10 P2 03-Jan-18 04-Jan-18 15
;
run;

data work.step;
   set work.have;
   by product;

   length date 8;
   format date ddmmyyp10.;

   do date = on_sale_date to off_sale_date;
      output;
   end;

   drop srno on_sale_date off_sale_date;
run;

proc sort data=work.step out=work.sorted;
   by product date sell_price;
run;

data work.want;
   length srno 8;
   retain srno 0;

   set work.sorted;
   by product date;

   if first.date;

   srno = srno + 1;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;i was to lazy to search for the appropriate format for the dates.&lt;/P&gt;</description>
      <pubDate>Thu, 05 Jul 2018 13:44:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/date-frequency-min-value/m-p/475623#M122316</guid>
      <dc:creator>andreas_lds</dc:creator>
      <dc:date>2018-07-05T13:44:12Z</dc:date>
    </item>
  </channel>
</rss>

