<?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 SAS SUM GROUPING CALCULATE LEADING VALUES in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689208#M209490</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I have values in a table which have met certain conditions. i'm in a situation where i have already joined the table on its selft to create an rolling total based on the next value by doing a N-1 type join, however i'm a bit stumped of how to add extra rules&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the next problem is where i have grouped keys, i want identify the first key in the group (VAR1), hold that value, then when the column called "FLAG" has a "Y" sum them together, then move on to the next group. see example of data then what i want to achieve&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;HAVE&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;VAR1&lt;/TD&gt;&lt;TD&gt;VAR9&lt;/TD&gt;&lt;TD&gt;VAR10&lt;/TD&gt;&lt;TD&gt;FLAG&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;9202.74&lt;/TD&gt;&lt;TD&gt;73&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;8960.37&lt;/TD&gt;&lt;TD&gt;134&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;8223.05&lt;/TD&gt;&lt;TD&gt;195&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;6698.29&lt;/TD&gt;&lt;TD&gt;256&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;5159.22&lt;/TD&gt;&lt;TD&gt;315&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;4433.15&lt;/TD&gt;&lt;TD&gt;347&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;3935.12&lt;/TD&gt;&lt;TD&gt;406&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;3689.69&lt;/TD&gt;&lt;TD&gt;486&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;3285.74&lt;/TD&gt;&lt;TD&gt;530&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;2245.72&lt;/TD&gt;&lt;TD&gt;589&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5132.63&lt;/TD&gt;&lt;TD&gt;53&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5117.29&lt;/TD&gt;&lt;TD&gt;60&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5096.84&lt;/TD&gt;&lt;TD&gt;67&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5088.66&lt;/TD&gt;&lt;TD&gt;70&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5070.25&lt;/TD&gt;&lt;TD&gt;77&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5048.77&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5025.25&lt;/TD&gt;&lt;TD&gt;91&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5002.76&lt;/TD&gt;&lt;TD&gt;98&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4995.6&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4977.19&lt;/TD&gt;&lt;TD&gt;107&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4954.69&lt;/TD&gt;&lt;TD&gt;114&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4926.06&lt;/TD&gt;&lt;TD&gt;121&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4902.54&lt;/TD&gt;&lt;TD&gt;128&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4894.36&lt;/TD&gt;&lt;TD&gt;131&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4874.93&lt;/TD&gt;&lt;TD&gt;138&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4847.31&lt;/TD&gt;&lt;TD&gt;145&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4811.52&lt;/TD&gt;&lt;TD&gt;152&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4770.62&lt;/TD&gt;&lt;TD&gt;159&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4738.91&lt;/TD&gt;&lt;TD&gt;166&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4731.76&lt;/TD&gt;&lt;TD&gt;168&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4691.87&lt;/TD&gt;&lt;TD&gt;175&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4664.26&lt;/TD&gt;&lt;TD&gt;182&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;WANT&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;VAR1&lt;/TD&gt;&lt;TD&gt;VAR9&lt;/TD&gt;&lt;TD&gt;VAR10&lt;/TD&gt;&lt;TD&gt;FLAG&lt;/TD&gt;&lt;TD&gt;Perc_inc&lt;/TD&gt;&lt;TD&gt;Rec_No&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;9202.74&lt;/TD&gt;&lt;TD&gt;73&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;TD&gt;11.9%&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;8223.05&lt;/TD&gt;&lt;TD&gt;195&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5132.63&lt;/TD&gt;&lt;TD&gt;53&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;TD&gt;10.0%&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4664.26&lt;/TD&gt;&lt;TD&gt;182&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;previously when i've only had 2 or so records per group i've dont something like&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
	create table work.test as
		select a.*, b.rec_no as next_rec,
			b.val as next_val,
			b.val2 as next_val2
		from work.test as a
			left join
				work.test as b
				on a.n eq (b.n - 1);
quit;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;But i'm finding it tricky to get a lead value, in a grouping, not sure how to tackle it - could be staring me in the face, just spent too long on it now.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thanks in advance&lt;/P&gt;</description>
    <pubDate>Tue, 06 Oct 2020 13:42:29 GMT</pubDate>
    <dc:creator>teelov</dc:creator>
    <dc:date>2020-10-06T13:42:29Z</dc:date>
    <item>
      <title>SAS SUM GROUPING CALCULATE LEADING VALUES</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689208#M209490</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I have values in a table which have met certain conditions. i'm in a situation where i have already joined the table on its selft to create an rolling total based on the next value by doing a N-1 type join, however i'm a bit stumped of how to add extra rules&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the next problem is where i have grouped keys, i want identify the first key in the group (VAR1), hold that value, then when the column called "FLAG" has a "Y" sum them together, then move on to the next group. see example of data then what i want to achieve&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;HAVE&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;VAR1&lt;/TD&gt;&lt;TD&gt;VAR9&lt;/TD&gt;&lt;TD&gt;VAR10&lt;/TD&gt;&lt;TD&gt;FLAG&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;9202.74&lt;/TD&gt;&lt;TD&gt;73&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;8960.37&lt;/TD&gt;&lt;TD&gt;134&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;8223.05&lt;/TD&gt;&lt;TD&gt;195&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;6698.29&lt;/TD&gt;&lt;TD&gt;256&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;5159.22&lt;/TD&gt;&lt;TD&gt;315&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;4433.15&lt;/TD&gt;&lt;TD&gt;347&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;3935.12&lt;/TD&gt;&lt;TD&gt;406&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;3689.69&lt;/TD&gt;&lt;TD&gt;486&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;3285.74&lt;/TD&gt;&lt;TD&gt;530&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;2245.72&lt;/TD&gt;&lt;TD&gt;589&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5132.63&lt;/TD&gt;&lt;TD&gt;53&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5117.29&lt;/TD&gt;&lt;TD&gt;60&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5096.84&lt;/TD&gt;&lt;TD&gt;67&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5088.66&lt;/TD&gt;&lt;TD&gt;70&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5070.25&lt;/TD&gt;&lt;TD&gt;77&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5048.77&lt;/TD&gt;&lt;TD&gt;84&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5025.25&lt;/TD&gt;&lt;TD&gt;91&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5002.76&lt;/TD&gt;&lt;TD&gt;98&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4995.6&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4977.19&lt;/TD&gt;&lt;TD&gt;107&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4954.69&lt;/TD&gt;&lt;TD&gt;114&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4926.06&lt;/TD&gt;&lt;TD&gt;121&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4902.54&lt;/TD&gt;&lt;TD&gt;128&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4894.36&lt;/TD&gt;&lt;TD&gt;131&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4874.93&lt;/TD&gt;&lt;TD&gt;138&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4847.31&lt;/TD&gt;&lt;TD&gt;145&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4811.52&lt;/TD&gt;&lt;TD&gt;152&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4770.62&lt;/TD&gt;&lt;TD&gt;159&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4738.91&lt;/TD&gt;&lt;TD&gt;166&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4731.76&lt;/TD&gt;&lt;TD&gt;168&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4691.87&lt;/TD&gt;&lt;TD&gt;175&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4664.26&lt;/TD&gt;&lt;TD&gt;182&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;WANT&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;VAR1&lt;/TD&gt;&lt;TD&gt;VAR9&lt;/TD&gt;&lt;TD&gt;VAR10&lt;/TD&gt;&lt;TD&gt;FLAG&lt;/TD&gt;&lt;TD&gt;Perc_inc&lt;/TD&gt;&lt;TD&gt;Rec_No&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;9202.74&lt;/TD&gt;&lt;TD&gt;73&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;TD&gt;11.9%&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;987654321&lt;/TD&gt;&lt;TD&gt;8223.05&lt;/TD&gt;&lt;TD&gt;195&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;5132.63&lt;/TD&gt;&lt;TD&gt;53&lt;/TD&gt;&lt;TD&gt;N&lt;/TD&gt;&lt;TD&gt;10.0%&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;98777444&lt;/TD&gt;&lt;TD&gt;4664.26&lt;/TD&gt;&lt;TD&gt;182&lt;/TD&gt;&lt;TD&gt;Y&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;previously when i've only had 2 or so records per group i've dont something like&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
	create table work.test as
		select a.*, b.rec_no as next_rec,
			b.val as next_val,
			b.val2 as next_val2
		from work.test as a
			left join
				work.test as b
				on a.n eq (b.n - 1);
quit;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;But i'm finding it tricky to get a lead value, in a grouping, not sure how to tackle it - could be staring me in the face, just spent too long on it now.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thanks in advance&lt;/P&gt;</description>
      <pubDate>Tue, 06 Oct 2020 13:42:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689208#M209490</guid>
      <dc:creator>teelov</dc:creator>
      <dc:date>2020-10-06T13:42:29Z</dc:date>
    </item>
    <item>
      <title>Re: SAS SUM GROUPING CALCULATE LEADING VALUES</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689211#M209493</link>
      <description>&lt;P&gt;So you need to compare the overall first value of a group with the first value within that group where flag="Y"? Meaning, the result will always have only 2 observations per VAR1.&lt;/P&gt;</description>
      <pubDate>Tue, 06 Oct 2020 13:51:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689211#M209493</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2020-10-06T13:51:32Z</dc:date>
    </item>
    <item>
      <title>Re: SAS SUM GROUPING CALCULATE LEADING VALUES</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689214#M209496</link>
      <description>sorry i should change my example you can have many "Y" - i'm just interested in the first</description>
      <pubDate>Tue, 06 Oct 2020 14:00:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689214#M209496</guid>
      <dc:creator>teelov</dc:creator>
      <dc:date>2020-10-06T14:00:35Z</dc:date>
    </item>
    <item>
      <title>Re: SAS SUM GROUPING CALCULATE LEADING VALUES</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689219#M209500</link>
      <description>&lt;P&gt;Try this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input VAR1 :$10. VAR9  VAR10 FLAG :$1.;
datalines;
987654321 9202.74 73  N
987654321 8960.37 134 N
987654321 8223.05 195 Y
987654321 6698.29 256 Y
987654321 5159.22 315 Y
987654321 4433.15 347 Y
987654321 3935.12 406 N
987654321 3689.69 486 N
987654321 3285.74 530 N
987654321 2245.72 589 N
98777444  5132.63 53  N
98777444  5117.29 60  N
98777444  5096.84 67  N
98777444  5088.66 70  N
98777444  5070.25 77  N
98777444  5048.77 84  N
98777444  5025.25 91  N
98777444  5002.76 98  N
98777444  4995.6  100 N
98777444  4977.19 107 N
98777444  4954.69 114 N
98777444  4926.06 121 N
98777444  4902.54 128 N
98777444  4894.36 131 N
98777444  4874.93 138 N
98777444  4847.31 145 N
98777444  4811.52 152 N
98777444  4770.62 159 N
98777444  4738.91 166 N
98777444  4731.76 168 N
98777444  4691.87 175 N
98777444  4664.26 182 Y
;

data want;
merge
  have
  have (
    rename=(var9=_var9 var10=_var10 flag=_flag)
    where=(_flag = 'Y')
  )
;
by var1;
if first.var1;
format perc_inc percent7.1;
perc_inc = (var9 - _var9) / _var9;
rec_no = 1;
output;
flag = _flag;
var9 = _var9;
var10 = _var10;
perc_inc = .;
rec_no = 2;
output;
drop _:;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 06 Oct 2020 14:13:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689219#M209500</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2020-10-06T14:13:12Z</dc:date>
    </item>
    <item>
      <title>Re: SAS SUM GROUPING CALCULATE LEADING VALUES</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689247#M209513</link>
      <description>i like this method, but there are some nice things to learn from here, i'm not sure how it will perform on a 200M dataset with 159vars but the techniques are great, thank you for your help... AS ALWAYS!</description>
      <pubDate>Tue, 06 Oct 2020 15:32:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-SUM-GROUPING-CALCULATE-LEADING-VALUES/m-p/689247#M209513</guid>
      <dc:creator>teelov</dc:creator>
      <dc:date>2020-10-06T15:32:07Z</dc:date>
    </item>
  </channel>
</rss>

