<?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: Highlighting all one-year prior observations using intnx function in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812786#M320706</link>
    <description>&lt;P&gt;Your one year prior doesn't seem to be "one calendar year" simply the year before in the data set according to what you've shown. Is that correct?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2010 data is well over one year the k=1 date which is 1999.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 11 May 2022 19:26:13 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2022-05-11T19:26:13Z</dc:date>
    <item>
      <title>Highlighting all one-year prior observations using intnx function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812715#M320672</link>
      <description>&lt;P&gt;Hi, SAS community,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sorry if I am bothering you with many questions.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I proc sorted the data by CUSIP and ANNDATS. I am trying to mark all the obs. over one-year range (&lt;EM&gt;Beforeyear&lt;/EM&gt;) prior to a designated row (k=1) using intnx. I ran the following code, but SAS accomplish the task for certain k=1, but not for other k=1. Can anyone please check why this happens?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My code is written as follows:&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Brokers3(drop = a); do until (last.cusip);
      set Brokers2; by CUSIP; if k = 1 then a = anndats; end;
   do until (last.cusip); set Brokers2; by CUSIP; 
Beforeyear = (a &amp;gt; anndats &amp;gt; intnx('year', a, -1, 's')); output; end; run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;And what I get, which is problematic, is the following.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="322"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="77"&gt;ANNDATS&lt;/TD&gt;
&lt;TD width="63"&gt;CUSIP&lt;/TD&gt;
&lt;TD width="91"&gt;k&lt;/TD&gt;
&lt;TD width="91"&gt;Beforeyear&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;7/8/1998&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;7/9/1998&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/1/1998&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/8/1998&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12/17/1998&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1/7/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2/12/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2/12/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2/16/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2/18/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/16/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/17/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4/19/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;5/6/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/11/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/25/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/28/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;9/1/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;9/20/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/14/1999&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/7/2010&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/7/2010&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/18/2010&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12/16/2010&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12/16/2010&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12/17/2010&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12/17/2010&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/16/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;7/8/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;7/8/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;7/15/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;9/12/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;9/21/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/6/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/7/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/21/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;10/25/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;11/7/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;12/8/2011&lt;/TD&gt;
&lt;TD&gt;00036110&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Many thanks in advance!&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sincerely,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;KS -,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 11 May 2022 16:59:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812715#M320672</guid>
      <dc:creator>KS99</dc:creator>
      <dc:date>2022-05-11T16:59:06Z</dc:date>
    </item>
    <item>
      <title>Re: Highlighting all one-year prior observations using intnx function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812753#M320694</link>
      <description>&lt;P&gt;You are using two DO UNTIL (last.cusip) loops.&amp;nbsp; The first loop reads all the observations and set the value of a for each instance of K=1.&amp;nbsp; &amp;nbsp;So the second K=1 record overwrites the value of a established by the previous k=1 record.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I think you will get what you want by changing&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;do until (last.cusip);&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;to&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;  do until (last.cusip or k=1);&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;for both loops.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I'd also suggest generating the cutoff date (i.e. a lower_bound on the date filter) when you encounter the k=1 record.&amp;nbsp; And between the two loops, if there was no k=1 record encountered in the upper loop set the lower_bound to dec 31, 9999, so the BEFOREYEAR will always be zero.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here's some untested code:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Brokers3(drop = lower_bound);
  do until (last.cusip or k=1);
    set Brokers2;
    by CUSIP;
    if k = 1 then lower_bound=intnx('year',anndats,-1,'sameday');
  end;
  if lower_bound=. then lower_bound='31dec9999'd;

  do until (last.cusip or k=1); 
    set Brokers2; 
    by CUSIP; 
    Beforeyear = (anndats &amp;gt; lower_bound);
    output; 
  end; 
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 11 May 2022 17:59:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812753#M320694</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2022-05-11T17:59:42Z</dc:date>
    </item>
    <item>
      <title>Re: Highlighting all one-year prior observations using intnx function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812786#M320706</link>
      <description>&lt;P&gt;Your one year prior doesn't seem to be "one calendar year" simply the year before in the data set according to what you've shown. Is that correct?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2010 data is well over one year the k=1 date which is 1999.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 11 May 2022 19:26:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812786#M320706</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2022-05-11T19:26:13Z</dc:date>
    </item>
    <item>
      <title>Re: Highlighting all one-year prior observations using intnx function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812846#M320736</link>
      <description>Thank you, mkeintz, for helping me this time plus your many previous helps. &lt;BR /&gt;Either code you suggested works perfectly well! &lt;BR /&gt;&lt;BR /&gt;Wish you a good evening, &lt;BR /&gt;&lt;BR /&gt;KS -</description>
      <pubDate>Thu, 12 May 2022 03:09:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812846#M320736</guid>
      <dc:creator>KS99</dc:creator>
      <dc:date>2022-05-12T03:09:15Z</dc:date>
    </item>
    <item>
      <title>Re: Highlighting all one-year prior observations using intnx function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812847#M320737</link>
      <description>Thank you Reeza for pointing out. &lt;BR /&gt;I abbreviated many obs. to present my dataset here. &lt;BR /&gt;What I simple mean is to check all previous obs. within 365 days' range. &lt;BR /&gt;&lt;BR /&gt;Wish you a good evening, &lt;BR /&gt;&lt;BR /&gt;KS -, &lt;BR /&gt;</description>
      <pubDate>Thu, 12 May 2022 03:12:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Highlighting-all-one-year-prior-observations-using-intnx/m-p/812847#M320737</guid>
      <dc:creator>KS99</dc:creator>
      <dc:date>2022-05-12T03:12:13Z</dc:date>
    </item>
  </channel>
</rss>

