<?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 Finding a stock within fund holdings in previous quarter in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440586#M110090</link>
    <description>&lt;P&gt;Hello all,&lt;/P&gt;&lt;P&gt;I would appreciate your help because I am a bit stuck in the sas programming. I&amp;nbsp;have a data that involves the holdings composition of different funds (fund_id) at each quarter (stock_id&lt;SPAN&gt;&amp;nbsp;, number and&amp;nbsp; prices)&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;For each fund_id :&lt;/P&gt;&lt;P&gt;I would like to know for each stock held by a fund_id&amp;nbsp; at each quarter , if the stock existed on a previous quarter or not (i.e. if the fund held the same stock in a previous quarter). If it is the case ( i.e. if the stock existed on a previous quarter for the same fund), I should recuperate the number and price of that stock&amp;nbsp; in the previous quarter and creates for them new variables. If it's not the case&amp;nbsp; I do nothing or I put zeros for the newly created variables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;my variables are as follow ( what I have):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;date&lt;/TD&gt;&lt;TD&gt;fund_id&lt;/TD&gt;&lt;TD&gt;stock_id&lt;/TD&gt;&lt;TD&gt;number&lt;/TD&gt;&lt;TD&gt;price&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;8916108&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;45&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;226406106&lt;/TD&gt;&lt;TD&gt;20000&lt;/TD&gt;&lt;TD&gt;13.73&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;9000&lt;/TD&gt;&lt;TD&gt;56.9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;15000&lt;/TD&gt;&lt;TD&gt;70.42&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;4000&lt;/TD&gt;&lt;TD&gt;43.305&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;32&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5458954&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;85&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;120&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;150&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;87403645&lt;/TD&gt;&lt;TD&gt;400&lt;/TD&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;645646&lt;/TD&gt;&lt;TD&gt;3000&lt;/TD&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5454545&lt;/TD&gt;&lt;TD&gt;1200&lt;/TD&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;5000&lt;/TD&gt;&lt;TD&gt;43.305&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;77778&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;121212&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;40&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;131313&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;88&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;44456&lt;/TD&gt;&lt;TD&gt;3200&lt;/TD&gt;&lt;TD&gt;45&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;10000&lt;/TD&gt;&lt;TD&gt;36&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;3333&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;466666&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I posted an excel sample data&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What I want :&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;date&lt;/TD&gt;&lt;TD&gt;fund_id&lt;/TD&gt;&lt;TD&gt;stock_id&lt;/TD&gt;&lt;TD&gt;number&lt;/TD&gt;&lt;TD&gt;price&lt;/TD&gt;&lt;TD&gt;number1&lt;/TD&gt;&lt;TD&gt;price1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;8916108&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;45&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;226406106&lt;/TD&gt;&lt;TD&gt;20000&lt;/TD&gt;&lt;TD&gt;13.73&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;9000&lt;/TD&gt;&lt;TD&gt;56.9&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;15000&lt;/TD&gt;&lt;TD&gt;70.42&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;4000&lt;/TD&gt;&lt;TD&gt;43.305&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;32&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5458954&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;85&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;100&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/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;120&lt;/TD&gt;&lt;TD&gt;9000&lt;/TD&gt;&lt;TD&gt;56.9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;150&lt;/TD&gt;&lt;TD&gt;15000&lt;/TD&gt;&lt;TD&gt;70.42&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;87403645&lt;/TD&gt;&lt;TD&gt;400&lt;/TD&gt;&lt;TD&gt;12&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/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;645646&lt;/TD&gt;&lt;TD&gt;3000&lt;/TD&gt;&lt;TD&gt;11&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/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5454545&lt;/TD&gt;&lt;TD&gt;1200&lt;/TD&gt;&lt;TD&gt;13&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;5000&lt;/TD&gt;&lt;TD&gt;43.305&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;15&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;77778&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;20&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;121212&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;40&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;131313&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;88&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you in advance for your precious help.&lt;/P&gt;</description>
    <pubDate>Tue, 27 Feb 2018 16:57:57 GMT</pubDate>
    <dc:creator>bera00</dc:creator>
    <dc:date>2018-02-27T16:57:57Z</dc:date>
    <item>
      <title>Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440586#M110090</link>
      <description>&lt;P&gt;Hello all,&lt;/P&gt;&lt;P&gt;I would appreciate your help because I am a bit stuck in the sas programming. I&amp;nbsp;have a data that involves the holdings composition of different funds (fund_id) at each quarter (stock_id&lt;SPAN&gt;&amp;nbsp;, number and&amp;nbsp; prices)&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;For each fund_id :&lt;/P&gt;&lt;P&gt;I would like to know for each stock held by a fund_id&amp;nbsp; at each quarter , if the stock existed on a previous quarter or not (i.e. if the fund held the same stock in a previous quarter). If it is the case ( i.e. if the stock existed on a previous quarter for the same fund), I should recuperate the number and price of that stock&amp;nbsp; in the previous quarter and creates for them new variables. If it's not the case&amp;nbsp; I do nothing or I put zeros for the newly created variables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;my variables are as follow ( what I have):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;date&lt;/TD&gt;&lt;TD&gt;fund_id&lt;/TD&gt;&lt;TD&gt;stock_id&lt;/TD&gt;&lt;TD&gt;number&lt;/TD&gt;&lt;TD&gt;price&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;8916108&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;45&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;226406106&lt;/TD&gt;&lt;TD&gt;20000&lt;/TD&gt;&lt;TD&gt;13.73&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;9000&lt;/TD&gt;&lt;TD&gt;56.9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;15000&lt;/TD&gt;&lt;TD&gt;70.42&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;4000&lt;/TD&gt;&lt;TD&gt;43.305&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;32&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5458954&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;85&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;120&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;150&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;87403645&lt;/TD&gt;&lt;TD&gt;400&lt;/TD&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;645646&lt;/TD&gt;&lt;TD&gt;3000&lt;/TD&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5454545&lt;/TD&gt;&lt;TD&gt;1200&lt;/TD&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;5000&lt;/TD&gt;&lt;TD&gt;43.305&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;77778&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;121212&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;40&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;131313&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;88&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;44456&lt;/TD&gt;&lt;TD&gt;3200&lt;/TD&gt;&lt;TD&gt;45&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;10000&lt;/TD&gt;&lt;TD&gt;36&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;3333&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;466666&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I posted an excel sample data&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What I want :&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;date&lt;/TD&gt;&lt;TD&gt;fund_id&lt;/TD&gt;&lt;TD&gt;stock_id&lt;/TD&gt;&lt;TD&gt;number&lt;/TD&gt;&lt;TD&gt;price&lt;/TD&gt;&lt;TD&gt;number1&lt;/TD&gt;&lt;TD&gt;price1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;8916108&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;45&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;226406106&lt;/TD&gt;&lt;TD&gt;20000&lt;/TD&gt;&lt;TD&gt;13.73&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;9000&lt;/TD&gt;&lt;TD&gt;56.9&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;15000&lt;/TD&gt;&lt;TD&gt;70.42&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;4000&lt;/TD&gt;&lt;TD&gt;43.305&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;32&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5458954&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;85&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/31/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;100&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/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;25243Q205&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;120&lt;/TD&gt;&lt;TD&gt;9000&lt;/TD&gt;&lt;TD&gt;56.9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;292505104&lt;/TD&gt;&lt;TD&gt;500&lt;/TD&gt;&lt;TD&gt;150&lt;/TD&gt;&lt;TD&gt;15000&lt;/TD&gt;&lt;TD&gt;70.42&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;87403645&lt;/TD&gt;&lt;TD&gt;400&lt;/TD&gt;&lt;TD&gt;12&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/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;645646&lt;/TD&gt;&lt;TD&gt;3000&lt;/TD&gt;&lt;TD&gt;11&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/30/2005&lt;/TD&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;5454545&lt;/TD&gt;&lt;TD&gt;1200&lt;/TD&gt;&lt;TD&gt;13&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;633067103&lt;/TD&gt;&lt;TD&gt;5000&lt;/TD&gt;&lt;TD&gt;43.305&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;767204100&lt;/TD&gt;&lt;TD&gt;1500&lt;/TD&gt;&lt;TD&gt;129.75&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;874039100&lt;/TD&gt;&lt;TD&gt;700&lt;/TD&gt;&lt;TD&gt;15&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;77778&lt;/TD&gt;&lt;TD&gt;900&lt;/TD&gt;&lt;TD&gt;20&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;121212&lt;/TD&gt;&lt;TD&gt;1000&lt;/TD&gt;&lt;TD&gt;40&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/31/2005&lt;/TD&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;131313&lt;/TD&gt;&lt;TD&gt;2000&lt;/TD&gt;&lt;TD&gt;88&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you in advance for your precious help.&lt;/P&gt;</description>
      <pubDate>Tue, 27 Feb 2018 16:57:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440586#M110090</guid>
      <dc:creator>bera00</dc:creator>
      <dc:date>2018-02-27T16:57:57Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440595#M110091</link>
      <description>&lt;P&gt;1. Sort by STOCK, date&lt;/P&gt;
&lt;P&gt;2. Use LAG to retreive the previous value and/or date.&lt;/P&gt;
&lt;P&gt;3. Check if the date is previous quarter, if so, flag as in previous quarter&lt;/P&gt;
&lt;P&gt;4. Otherwise, set flag to 0.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-SPOILER&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/123354"&gt;@bera00&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;Hello all,&lt;/P&gt;
&lt;P&gt;I would appreciate your help because I am a bit stuck in the sas programming. I&amp;nbsp;have a data that involves the holdings composition of different funds (fund_id) at each quarter (stock_id&lt;SPAN&gt;&amp;nbsp;, number and&amp;nbsp; prices)&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;For each fund_id :&lt;/P&gt;
&lt;P&gt;I would like to know for each stock held by a fund_id&amp;nbsp; at each quarter , if the stock existed on a previous quarter or not (i.e. if the fund held the same stock in a previous quarter). If it is the case ( i.e. if the stock existed on a previous quarter for the same fund), I should recuperate the number and price of that stock&amp;nbsp; in the previous quarter and creates for them new variables. If it's not the case&amp;nbsp; I do nothing or I put zeros for the newly created variables.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;my variables are as follow ( what I have):&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;date&lt;/TD&gt;
&lt;TD&gt;fund_id&lt;/TD&gt;
&lt;TD&gt;stock_id&lt;/TD&gt;
&lt;TD&gt;number&lt;/TD&gt;
&lt;TD&gt;price&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;8916108&lt;/TD&gt;
&lt;TD&gt;500&lt;/TD&gt;
&lt;TD&gt;45&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;226406106&lt;/TD&gt;
&lt;TD&gt;20000&lt;/TD&gt;
&lt;TD&gt;13.73&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;25243Q205&lt;/TD&gt;
&lt;TD&gt;9000&lt;/TD&gt;
&lt;TD&gt;56.9&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;292505104&lt;/TD&gt;
&lt;TD&gt;15000&lt;/TD&gt;
&lt;TD&gt;70.42&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;633067103&lt;/TD&gt;
&lt;TD&gt;4000&lt;/TD&gt;
&lt;TD&gt;43.305&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;767204100&lt;/TD&gt;
&lt;TD&gt;1500&lt;/TD&gt;
&lt;TD&gt;129.75&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;874039100&lt;/TD&gt;
&lt;TD&gt;700&lt;/TD&gt;
&lt;TD&gt;32&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;5458954&lt;/TD&gt;
&lt;TD&gt;900&lt;/TD&gt;
&lt;TD&gt;85&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;874039100&lt;/TD&gt;
&lt;TD&gt;1000&lt;/TD&gt;
&lt;TD&gt;100&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;25243Q205&lt;/TD&gt;
&lt;TD&gt;2000&lt;/TD&gt;
&lt;TD&gt;120&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;292505104&lt;/TD&gt;
&lt;TD&gt;500&lt;/TD&gt;
&lt;TD&gt;150&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;87403645&lt;/TD&gt;
&lt;TD&gt;400&lt;/TD&gt;
&lt;TD&gt;12&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;645646&lt;/TD&gt;
&lt;TD&gt;3000&lt;/TD&gt;
&lt;TD&gt;11&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;5454545&lt;/TD&gt;
&lt;TD&gt;1200&lt;/TD&gt;
&lt;TD&gt;13&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;633067103&lt;/TD&gt;
&lt;TD&gt;5000&lt;/TD&gt;
&lt;TD&gt;43.305&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;767204100&lt;/TD&gt;
&lt;TD&gt;1500&lt;/TD&gt;
&lt;TD&gt;129.75&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;874039100&lt;/TD&gt;
&lt;TD&gt;700&lt;/TD&gt;
&lt;TD&gt;15&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;77778&lt;/TD&gt;
&lt;TD&gt;900&lt;/TD&gt;
&lt;TD&gt;20&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;121212&lt;/TD&gt;
&lt;TD&gt;1000&lt;/TD&gt;
&lt;TD&gt;40&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;131313&lt;/TD&gt;
&lt;TD&gt;2000&lt;/TD&gt;
&lt;TD&gt;88&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;44456&lt;/TD&gt;
&lt;TD&gt;3200&lt;/TD&gt;
&lt;TD&gt;45&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;767204100&lt;/TD&gt;
&lt;TD&gt;10000&lt;/TD&gt;
&lt;TD&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;874039100&lt;/TD&gt;
&lt;TD&gt;3333&lt;/TD&gt;
&lt;TD&gt;100&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;466666&lt;/TD&gt;
&lt;TD&gt;20&lt;/TD&gt;
&lt;TD&gt;14&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I posted an excel sample data&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;What I want :&lt;/P&gt;
&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;date&lt;/TD&gt;
&lt;TD&gt;fund_id&lt;/TD&gt;
&lt;TD&gt;stock_id&lt;/TD&gt;
&lt;TD&gt;number&lt;/TD&gt;
&lt;TD&gt;price&lt;/TD&gt;
&lt;TD&gt;number1&lt;/TD&gt;
&lt;TD&gt;price1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;8916108&lt;/TD&gt;
&lt;TD&gt;500&lt;/TD&gt;
&lt;TD&gt;45&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;226406106&lt;/TD&gt;
&lt;TD&gt;20000&lt;/TD&gt;
&lt;TD&gt;13.73&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;25243Q205&lt;/TD&gt;
&lt;TD&gt;9000&lt;/TD&gt;
&lt;TD&gt;56.9&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;292505104&lt;/TD&gt;
&lt;TD&gt;15000&lt;/TD&gt;
&lt;TD&gt;70.42&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;633067103&lt;/TD&gt;
&lt;TD&gt;4000&lt;/TD&gt;
&lt;TD&gt;43.305&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;767204100&lt;/TD&gt;
&lt;TD&gt;1500&lt;/TD&gt;
&lt;TD&gt;129.75&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;874039100&lt;/TD&gt;
&lt;TD&gt;700&lt;/TD&gt;
&lt;TD&gt;32&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;5458954&lt;/TD&gt;
&lt;TD&gt;900&lt;/TD&gt;
&lt;TD&gt;85&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/31/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;874039100&lt;/TD&gt;
&lt;TD&gt;1000&lt;/TD&gt;
&lt;TD&gt;100&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/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;25243Q205&lt;/TD&gt;
&lt;TD&gt;2000&lt;/TD&gt;
&lt;TD&gt;120&lt;/TD&gt;
&lt;TD&gt;9000&lt;/TD&gt;
&lt;TD&gt;56.9&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;292505104&lt;/TD&gt;
&lt;TD&gt;500&lt;/TD&gt;
&lt;TD&gt;150&lt;/TD&gt;
&lt;TD&gt;15000&lt;/TD&gt;
&lt;TD&gt;70.42&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;6/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;87403645&lt;/TD&gt;
&lt;TD&gt;400&lt;/TD&gt;
&lt;TD&gt;12&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/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;645646&lt;/TD&gt;
&lt;TD&gt;3000&lt;/TD&gt;
&lt;TD&gt;11&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/30/2005&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;5454545&lt;/TD&gt;
&lt;TD&gt;1200&lt;/TD&gt;
&lt;TD&gt;13&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/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;633067103&lt;/TD&gt;
&lt;TD&gt;5000&lt;/TD&gt;
&lt;TD&gt;43.305&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/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;767204100&lt;/TD&gt;
&lt;TD&gt;1500&lt;/TD&gt;
&lt;TD&gt;129.75&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/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;874039100&lt;/TD&gt;
&lt;TD&gt;700&lt;/TD&gt;
&lt;TD&gt;15&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/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;77778&lt;/TD&gt;
&lt;TD&gt;900&lt;/TD&gt;
&lt;TD&gt;20&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/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;121212&lt;/TD&gt;
&lt;TD&gt;1000&lt;/TD&gt;
&lt;TD&gt;40&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/31/2005&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;131313&lt;/TD&gt;
&lt;TD&gt;2000&lt;/TD&gt;
&lt;TD&gt;88&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;0&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you in advance for your precious help.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;/LI-SPOILER&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 27 Feb 2018 17:31:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440595#M110091</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-02-27T17:31:23Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440611#M110105</link>
      <description>&lt;P&gt;You can use Proc SQL and a self referencing join, where you compute the date of the previous quarter using the INTNX function.&lt;/P&gt;
&lt;P&gt;Based on the information returned, you can fill the new variables with values from the previous quarter.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;See here an example:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
  infile cards dlm=",";
  seqNr + 1;
  input
    date : mmddyy10.
    fund_id	: $8.
    stock_id : $16.
    number : 8.
    price :8.
  ;
  format date date9.;
cards;
3/31/2005,A,8916108,500,45
3/31/2005,A,226406106,20000,13.73
3/31/2005,A,25243Q205,9000,56.9
3/31/2005,A,292505104,15000,70.42
3/31/2005,A,633067103,4000,43.305
3/31/2005,A,767204100,1500,129.75
3/31/2005,A,874039100,700,32
3/31/2005,A,5458954,900,85
3/31/2005,A,874039100,1000,100
6/30/2005,A,25243Q205,2000,120
6/30/2005,A,292505104,500,150
6/30/2005,A,87403645,400,12
6/30/2005,A,645646,3000,11
6/30/2005,A,5454545,1200,13
3/31/2005,B,633067103,5000,43.305
3/31/2005,B,767204100,1500,129.75
3/31/2005,B,874039100,700,15
3/31/2005,B,77778,900,20
3/31/2005,B,121212,1000,40
3/31/2005,B,131313,2000,88
6/30/2005,B,44456,3200,45
6/30/2005,B,767204100,10000,36
6/30/2005,B,874039100,3333,100
6/30/2005,B,466666,20,14
;

proc sql feedback;
  select
    A.seqNr
    , A.date
    , A.fund_id
    , A.stock_id
    , A.number
    , A.price
    , B.seqNr
    , B.date
    , B.fund_id
    , B.stock_id
    , B.number
    , B.price
    , case
        when b.stock_id not is missing then b.number else 0
      end as previousNumner
    , case
        when b.stock_id not is missing then b.price else 0
      end as previousprice

  from
    have as a
    left outer join
    have as b
    on
      a.fund_id = b.fund_ID
      and a.stock_id = b.stock_id
      and b.date = intnx("qtr", a.date, -1, "E")
  order by
    a.date
    , a.fund_id
    , a.stock_id
  ;
quit;
    &lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 27 Feb 2018 18:01:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440611#M110105</guid>
      <dc:creator>BrunoMueller</dc:creator>
      <dc:date>2018-02-27T18:01:12Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440644#M110123</link>
      <description>&lt;P&gt;Your data is sorted by date/fundid&lt;STRIKE&gt;/stockid&lt;/STRIKE&gt; (edited change: it's&amp;nbsp;sorted by date/fundid, but not stockid within date/fundid.&amp;nbsp; However that is not required for my suggested program to work.&amp;nbsp; So don't think you need to sort the data any further than its current status).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you have a large dataset of holdings, I would NOT sort by fundid/stock/date&amp;nbsp; (only to re-sort back to original order).&amp;nbsp; Instead you can use a hash object to dynamically hold the most recent date, price,&amp;nbsp;and number of shares for each fund/stock combination.&amp;nbsp; This code is untested:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want (drop=_:);
  if _n_=1 then do;
    if 0 then set have 
                  have (rename=(date=_date1 number=number1 price=price1));
    declare hash h ();
      h.definekey('fund_id','stock_id');
      h.definedata('_date1','number1','price1');
      h.definedone();
  end;

  retain _last_qtr_date .;

  set have;
  by date ;
  if first.date then _last_qtr_date=intnx('qtr',date,-1,'end');

  _rc=h.find();
  if NOT(_rc=0 and _date1=_last_qtr_date) then do;
    number1=0;
    price1=.;
  end;&lt;BR /&gt;&lt;BR /&gt;  _rc=h.replace(key:fund_id,key:stock_id,data:date,data:number,data:price);
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Edited at 2:56PM,&amp;nbsp; just now put in the essential&amp;nbsp; _rc=h.replace ....&amp;nbsp;&amp;nbsp;&amp;nbsp; statement.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Edited at 4:45PM.&amp;nbsp; I think you will find this much faster than the PROC SQL, because the latter requires a Cartesian comparison of all dates within each fund/stock group.&amp;nbsp; The advantage of PROC SQL is that it doesn't require pre-sorted data sets.&amp;nbsp; But that also means it often will not take advantage of data that are pre-sorted.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 27 Feb 2018 21:47:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440644#M110123</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2018-02-27T21:47:38Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440694#M110149</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards dlm=",";
input date : mmddyy10. fund_id	: $8. stock_id : $16.  number : 8.  price :8.;
format date date9.;
cards;
3/31/2005,A,8916108,500,45
3/31/2005,A,226406106,20000,13.73
3/31/2005,A,25243Q205,9000,56.9
3/31/2005,A,292505104,15000,70.42
3/31/2005,A,633067103,4000,43.305
3/31/2005,A,767204100,1500,129.75
3/31/2005,A,874039100,700,32
3/31/2005,A,5458954,900,85
3/31/2005,A,874039100,1000,100
6/30/2005,A,25243Q205,2000,120
6/30/2005,A,292505104,500,150
6/30/2005,A,87403645,400,12
6/30/2005,A,645646,3000,11
6/30/2005,A,5454545,1200,13
3/31/2005,B,633067103,5000,43.305
3/31/2005,B,767204100,1500,129.75
3/31/2005,B,874039100,700,15
3/31/2005,B,77778,900,20
3/31/2005,B,121212,1000,40
3/31/2005,B,131313,2000,88
6/30/2005,B,44456,3200,45
6/30/2005,B,767204100,10000,36
6/30/2005,B,874039100,3333,100
6/30/2005,B,466666,20,14
;

proc sort data=have out=_have;
by fund_id stock_id date;
run;

data temp;
drop _:;
do until(last.stock_id);
set _have;
by fund_id stock_id date;
if first.stock_id then do;
number1=0;
price1=0;
end;
else if intnx('qtr',date,-1,'end')=_date1 then  do;
number1=_number1;
price1=_price1;
end;
_number1=number;
_price1=price;
_date1=date;
end;
run;

data want;
merge _have temp;
by fund_id stock_id date;
if missing(number1) and missing(price1) then do;
number1=0;
price1=0;
end;
run;

proc sort data=want out=final_want;
by fund_id date;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 27 Feb 2018 23:03:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440694#M110149</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-02-27T23:03:33Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440729#M110165</link>
      <description>&lt;P&gt;Most mutual fund financial research projects I have seen cover 1,000's of funds, with 1,000's of stocks over 10-year plus time periods (40 quarters).&amp;nbsp; A&amp;nbsp; solution like this with multiple sorts is expensive in time, disk space, and disk input/output activity.&amp;nbsp; It has four steps which read the full data set 4 times, writes a full data set 3 times, and invokes a proc sort 2 times.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Given that the original sort order of the data set can be utilized as is, I find it hard to imagine a situation in which this solution should be suggested for a production environment.&lt;/P&gt;</description>
      <pubDate>Wed, 28 Feb 2018 02:01:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440729#M110165</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2018-02-28T02:01:58Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440839#M110211</link>
      <description>&lt;P&gt;Thank you for your resonse. this method works&lt;/P&gt;</description>
      <pubDate>Wed, 28 Feb 2018 11:15:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440839#M110211</guid>
      <dc:creator>bera00</dc:creator>
      <dc:date>2018-02-28T11:15:19Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440840#M110212</link>
      <description>&lt;P&gt;Thank you so much&lt;/P&gt;&lt;P&gt;this method works for my data&lt;/P&gt;</description>
      <pubDate>Wed, 28 Feb 2018 11:16:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440840#M110212</guid>
      <dc:creator>bera00</dc:creator>
      <dc:date>2018-02-28T11:16:00Z</dc:date>
    </item>
    <item>
      <title>Re: Finding a stock within fund holdings in previous quarter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440994#M110262</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards dlm=",";
input date : mmddyy10. fund_id	: $8. stock_id : $16.  number : 8.  price :8.;
format date date9.;
cards;
3/31/2005,A,8916108,500,45
3/31/2005,A,226406106,20000,13.73
3/31/2005,A,25243Q205,9000,56.9
3/31/2005,A,292505104,15000,70.42
3/31/2005,A,633067103,4000,43.305
3/31/2005,A,767204100,1500,129.75
3/31/2005,A,874039100,700,32
3/31/2005,A,5458954,900,85
3/31/2005,A,874039100,1000,100
6/30/2005,A,25243Q205,2000,120
6/30/2005,A,292505104,500,150
6/30/2005,A,87403645,400,12
6/30/2005,A,645646,3000,11
6/30/2005,A,5454545,1200,13
3/31/2005,B,633067103,5000,43.305
3/31/2005,B,767204100,1500,129.75
3/31/2005,B,874039100,700,15
3/31/2005,B,77778,900,20
3/31/2005,B,121212,1000,40
3/31/2005,B,131313,2000,88
6/30/2005,B,44456,3200,45
6/30/2005,B,767204100,10000,36
6/30/2005,B,874039100,3333,100
6/30/2005,B,466666,20,14
;


data want;
_n=0;
do n=1 by 1 until(last.fund_id);
set have;
by fund_id date;
number1=0;price1=0;
if first.date then _n+1;
array _t(25) $20;/*arbitrary subscript value*/
array _k(25,3);
if n=1 then call missing(of _t(*), of _k(*));
if _n&amp;gt;1 then do;
_f=whichc(stock_id,of _t(*));
	if _f&amp;gt;0 then do;
	if intnx('qtr',date,-1,'end')=_k(_f,3) then do;
	number1=_k(_f,1);
	price1=_k(_f,2);
	end;
end;
end;
_t(n)=stock_id;
_k(n,1)=number;
_k(n,2)=price;
_k(n,3)=date;
output;
end;
drop _: n; 
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 28 Feb 2018 19:17:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Finding-a-stock-within-fund-holdings-in-previous-quarter/m-p/440994#M110262</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-02-28T19:17:34Z</dc:date>
    </item>
  </channel>
</rss>

