<?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: Summary with spaces in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/440158#M109908</link>
    <description>&lt;P&gt;Thank so much.&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/4954"&gt;@Astounding&lt;/a&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Your code solve the problem.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I have nerver used the function Dif before but now I believe I'll use a lot.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Sas is amazing.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;</description>
    <pubDate>Mon, 26 Feb 2018 11:55:11 GMT</pubDate>
    <dc:creator>Lhbernagozzi</dc:creator>
    <dc:date>2018-02-26T11:55:11Z</dc:date>
    <item>
      <title>Summary with spaces</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/439675#M109745</link>
      <description>&lt;P&gt;Hi, I'm new in Sas and I don't have a clue of how to do one step of my program. Can you, please, give me some help?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I need&amp;nbsp;count&amp;nbsp;and take avg from my stock, but only in the days I had&amp;nbsp;the item in stock.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Base Table.&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Date&lt;/TD&gt;&lt;TD&gt;Item&lt;/TD&gt;&lt;TD&gt;Qty Stock&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;01FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;02FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;03FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;04FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;38&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;05FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;38&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;06FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;07FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;08FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;09FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;10FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;15FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;17FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;18FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;72&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;19FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;68&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20FEB2018&lt;/TD&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;69&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The variables DateBegin and DateEnd is not necessary. I put in the result table to be more to figure what I need.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Result Table&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Item&lt;/TD&gt;&lt;TD&gt;DateBegin&lt;/TD&gt;&lt;TD&gt;DateEnd&lt;/TD&gt;&lt;TD&gt;CountDays&lt;/TD&gt;&lt;TD&gt;AvgStock&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;01FEB2018&lt;/TD&gt;&lt;TD&gt;10FEB2018&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;9,3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;T-shirt1&lt;/TD&gt;&lt;TD&gt;15FEB2018&lt;/TD&gt;&lt;TD&gt;20FEB2018&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;35,3&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;BR /&gt;Thanks in advanced.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 23 Feb 2018 12:54:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/439675#M109745</guid>
      <dc:creator>Lhbernagozzi</dc:creator>
      <dc:date>2018-02-23T12:54:35Z</dc:date>
    </item>
    <item>
      <title>Re: Summary with spaces</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/439709#M109749</link>
      <description>&lt;P&gt;I can't tell whether you need to do this for just one item (T-shirt1) or many items.&amp;nbsp; So here's a program that would work in either case.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;proc sort data=have;&lt;/P&gt;
&lt;P&gt;by item date;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data groups;&lt;/P&gt;
&lt;P&gt;set have;&lt;/P&gt;
&lt;P&gt;by item;&lt;/P&gt;
&lt;P&gt;days = dif(date);&lt;/P&gt;
&lt;P&gt;if first.item or days &amp;gt; 1 then group + 1;&lt;/P&gt;
&lt;P&gt;drop days;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This gives you a new variable GROUP that is unique for each set of observations that should be summarized separately from the other observations.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Then summarize.&amp;nbsp; I'll keep the dates in there to match your result.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;proc summary data=groups;&lt;/P&gt;
&lt;P&gt;by item group;&lt;/P&gt;
&lt;P&gt;var date qty;&lt;/P&gt;
&lt;P&gt;output out=want (drop=_type_ group rename=(_freq_=CountDays))&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; min(date) = DateBegin&amp;nbsp; max(date) = DateEnd&amp;nbsp; mean(qty)=AvgStock;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When printing, you probably want to apply a format to DateBegin and DateEnd, such as:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;format datebegin dateend date9.;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is untested code, so it might require slight tweaking.&lt;/P&gt;</description>
      <pubDate>Fri, 23 Feb 2018 14:21:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/439709#M109749</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2018-02-23T14:21:35Z</dc:date>
    </item>
    <item>
      <title>Re: Summary with spaces</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/439871#M109789</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input Date :date9.	Item : $10.	QtyStock;
format date date9.;
datalines;
01FEB2018	T-shirt1	2
02FEB2018	T-shirt1	3
03FEB2018	T-shirt1	3
04FEB2018	T-shirt1	38
05FEB2018	T-shirt1	38
06FEB2018	T-shirt1	2
07FEB2018	T-shirt1	2
08FEB2018	T-shirt1	2
09FEB2018	T-shirt1	1
10FEB2018	T-shirt1	2
15FEB2018	T-shirt1	1
16FEB2018	T-shirt1	1
17FEB2018	T-shirt1	1
18FEB2018	T-shirt1	72
19FEB2018	T-shirt1	68
20FEB2018	T-shirt1	69
;
data want;
set have;
by item date;
array t(1000) _temporary_;
if first.item then call missing(of t(*));
days = dif(date);
if days ne 1 then  count=1;
else if days=1 then count+1;
_c=lag(count);
if not first.item and count=1 then do;
countdays=_c;
avgstock=sum(of t(*))/_c;
output;
call missing(of t(*));
end;
else if last.item then do;
t(count)=qtystock;
countdays=count;
avgstock=sum(of t(*))/count;
output;
end;
t(count)=qtystock;
keep item countdays avgstock;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 23 Feb 2018 21:43:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/439871#M109789</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-02-23T21:43:42Z</dc:date>
    </item>
    <item>
      <title>Re: Summary with spaces</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/440158#M109908</link>
      <description>&lt;P&gt;Thank so much.&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/4954"&gt;@Astounding&lt;/a&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Your code solve the problem.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I have nerver used the function Dif before but now I believe I'll use a lot.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Sas is amazing.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Mon, 26 Feb 2018 11:55:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Summary-with-spaces/m-p/440158#M109908</guid>
      <dc:creator>Lhbernagozzi</dc:creator>
      <dc:date>2018-02-26T11:55:11Z</dc:date>
    </item>
  </channel>
</rss>

