<?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 Help! in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Help/m-p/214239#M39539</link>
    <description>&lt;P style="font-size: 13.3333330154419px;"&gt;Hi&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&lt;STRONG style="font-size: 13.3333330154419px;"&gt;Anybody can give me some help? how to code my study?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&lt;STRONG style="font-size: 13.3333330154419px;"&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;Fdate refer to forecast announcement date, Adate refers to actual number announcement date, F_value refers to forecast value, A_value refers to actual value, and Analysts code identify specific estimator. I need to create two variables (say v1 and v2).&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;First, I need to find the estimator whose Fdate is the closest to Adate ( in this example, it is should be analysts #9). v1=A_value-F_value.(3.15-3.5) &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Then, same analysts&lt;/STRONG&gt;&lt;/SPAN&gt;, I need to find his/her earliest Fdate ( in this example, it is should be &lt;SPAN style="font-size: 13.3333330154419px;"&gt;20011228). v2=&lt;SPAN style="font-size: 13.3333330154419px;"&gt;A_value-F_value.(&lt;/SPAN&gt;3.15-3.1)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;&lt;STRONG&gt;Anybody can give me some direction how to code my study?&lt;/STRONG&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class="jiveBorder" style="border: 1px solid #000000; width: 100%;  border=" 1=""&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Fdate&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Adate&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;F_value&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;A_value&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Analysts code&lt;/STRONG&gt;&lt;/TH&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20010305&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;20021002&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.15&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;5&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20011228&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.1&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;9&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20020223&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.2&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;7&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20020518&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.3&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;5&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20020826&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.4&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;7&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20021001&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.5&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;9&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
    <pubDate>Fri, 23 Oct 2015 13:59:14 GMT</pubDate>
    <dc:creator>Ianacct</dc:creator>
    <dc:date>2015-10-23T13:59:14Z</dc:date>
    <item>
      <title>Help!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help/m-p/214239#M39539</link>
      <description>&lt;P style="font-size: 13.3333330154419px;"&gt;Hi&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&lt;STRONG style="font-size: 13.3333330154419px;"&gt;Anybody can give me some help? how to code my study?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&lt;STRONG style="font-size: 13.3333330154419px;"&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;Fdate refer to forecast announcement date, Adate refers to actual number announcement date, F_value refers to forecast value, A_value refers to actual value, and Analysts code identify specific estimator. I need to create two variables (say v1 and v2).&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;First, I need to find the estimator whose Fdate is the closest to Adate ( in this example, it is should be analysts #9). v1=A_value-F_value.(3.15-3.5) &lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Then, same analysts&lt;/STRONG&gt;&lt;/SPAN&gt;, I need to find his/her earliest Fdate ( in this example, it is should be &lt;SPAN style="font-size: 13.3333330154419px;"&gt;20011228). v2=&lt;SPAN style="font-size: 13.3333330154419px;"&gt;A_value-F_value.(&lt;/SPAN&gt;3.15-3.1)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="font-size: 13.3333330154419px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;&lt;STRONG&gt;Anybody can give me some direction how to code my study?&lt;/STRONG&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class="jiveBorder" style="border: 1px solid #000000; width: 100%;  border=" 1=""&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Fdate&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Adate&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;F_value&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;A_value&lt;/STRONG&gt;&lt;/TH&gt;
&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Analysts code&lt;/STRONG&gt;&lt;/TH&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20010305&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;20021002&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.15&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;5&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20011228&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.1&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;9&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20020223&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.2&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;7&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20020518&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.3&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;5&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20020826&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.4&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;7&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="padding: 2px;"&gt;20021001&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;20021002&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;3.5&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;3.15&lt;/SPAN&gt;&lt;/TD&gt;
&lt;TD style="padding: 2px;"&gt;9&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
      <pubDate>Fri, 23 Oct 2015 13:59:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help/m-p/214239#M39539</guid>
      <dc:creator>Ianacct</dc:creator>
      <dc:date>2015-10-23T13:59:14Z</dc:date>
    </item>
    <item>
      <title>Re: Help!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help/m-p/231066#M41993</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This should get you what you are looking for.... The 2 vars with prefix "New_" should get the right values for the Analyst_Code .... The Red and Blue are the 2 subqueries that will feed the data to the wrapper query. If you run each query separately and view the results, you will easily understand what is going on in this select structure. It is really not as bad as it looks. Once you indent the code, it will be pretty clean and easy to read.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Good Luck ...!!! &amp;nbsp;Hope this helps you.....&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data have;infile datalines dlm='09'x;&lt;BR /&gt;input &lt;BR /&gt;F_Date:yymmdd8. &lt;BR /&gt; A_Date:yymmdd8. &lt;BR /&gt; F_Value &lt;BR /&gt; A_Value Analyst_Code;&lt;BR /&gt;datalines;&lt;BR /&gt;20010305 20021002 3 3.15 5&lt;BR /&gt;20011228 20021002 3.1 3.15 9&lt;BR /&gt;20020223 20021002 3.2 3.15 7&lt;BR /&gt;20020518 20021002 3.3 3.15 5&lt;BR /&gt;20020826 20021002 3.4 3.15 7&lt;BR /&gt;20021001 20021002 3.5 3.15 9&lt;BR /&gt;;run;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;proc sql;&lt;/P&gt;
&lt;P&gt;SELECT Y.MIN_F_DATE AS NEW_F_DATE FORMAT=MMDDYY10., Y.F_VALUE AS NEW_F_VALUE,Z.F_DATE FORMAT=MMDDYY10.,Z.A_DATE FORMAT=YYMMDD10., Z.F_VALUE, Z.A_VALUE,&lt;BR /&gt; Z.ANALYST_CODE&lt;BR /&gt; FROM&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;(select b.analyst_code, b.min_f_date, b.f_value, b.a_value,b.min_f_date from&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;(select distinct analyst_code , min(f_date) as min_f_date format=mmddyy10. from have group by analyst_code) a,&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;(SELECT DISTINCT ANALYST_CODE,a_value,F_VALUE ,a_value, MIN(F_DATE) AS MIN_F_DATE FORMAT=MMDDYY10. FROM HAVE GROUP BY ANALYST_CODE,a_value,f_VALUE) b&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;where b.analyst_code = a.analyst_code&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt; and b.min_f_date = a.min_f_date ) Y,&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;(select F_DATE FORMAT =YYMMDD10., A_DATE FORMAT =YYMMDD10., F_VALUE, A_VALUE, ANALYST_CODE, THE_DATE, MIN_DATE&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt; from (select *, (a_date-f_date) as the_date from have) A,&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt; (select MIN (a_date-f_date) as MIN_date from have ) B&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt; WHERE A.THE_DATE = MIN_DATE) Z&lt;/FONT&gt;&lt;BR /&gt;WHERE Y.ANALYST_CODE = Z.ANALYST_CODE;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;quit;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Oct 2015 01:17:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help/m-p/231066#M41993</guid>
      <dc:creator>kannand</dc:creator>
      <dc:date>2015-10-22T01:17:29Z</dc:date>
    </item>
    <item>
      <title>Re: Help!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help/m-p/231092#M42002</link>
      <description>&lt;P&gt;Like this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data HAVE (index=(DIF_DATE A=(ANALYST_CODE F_DATE)));
  input F_DATE yymmdd9.
        A_DATE yymmdd9.
        F_VALUE
        A_VALUE 
        ANALYST_CODE;
  DIF_DATE  = abs(A_DATE-F_DATE);
  DIF_VALUE = A_VALUE-F_VALUE;
cards;
20010305 20021002 3   3.15 5
20011228 20021002 3.1 3.15 9
20020223 20021002 3.2 3.15 7
20020518 20021002 3.3 3.15 5
20020826 20021002 3.4 3.15 7
20021001 20021002 3.5 3.15 9
run; &lt;BR /&gt;
data WANT;
  set HAVE;
  by DIF_DATE;   
  V1=DIF_VALUE;
  set HAVE key=ANALYST_CODE;
  V2=DIF_VALUE;  
  output;
  stop;
run;

 &lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Oct 2015 09:46:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help/m-p/231092#M42002</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2015-10-22T09:46:16Z</dc:date>
    </item>
  </channel>
</rss>

