<?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: How to merge appended values (continued from yesterday) in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692188#M210808</link>
    <description>Great, thanks! And so, generally, if you have repeating observations that are identical in terms of variable values other than the cost variable, you would simply keep adding the other variable names to the select and group by statements then? does the order matter? I assume ID always has to be first in the by statement but otherwise no as long as ID is unique?</description>
    <pubDate>Fri, 16 Oct 2020 17:31:03 GMT</pubDate>
    <dc:creator>EC27556</dc:creator>
    <dc:date>2020-10-16T17:31:03Z</dc:date>
    <item>
      <title>How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692169#M210797</link>
      <description>&lt;P&gt;&lt;STRONG&gt;Yesterday I posted this:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;I currently have a situation where I have:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Cost&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;10&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;10&lt;/P&gt;&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;/P&gt;&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What code can I use to convert the above into:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Cost&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;15&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;10&lt;/P&gt;&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;20&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;And someone gave an answer as this:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN class="token step keyword"&gt;data&lt;/SPAN&gt; have&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="token input"&gt;&lt;SPAN class="token input keyword"&gt;input&lt;/SPAN&gt; id cost;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="token datalines string"&gt;&lt;SPAN class="token keyword"&gt;datalines&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; 5 &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; 10 &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;3&amp;nbsp;&amp;nbsp; 10 &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;3&amp;nbsp;&amp;nbsp; 10 &lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class="token step keyword"&gt;run&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="token step keyword"&gt;proc sql&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;create&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;table&lt;/SPAN&gt; want &lt;SPAN class="token keyword"&gt;as&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;select&lt;/SPAN&gt; id&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;sum&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;(&lt;/SPAN&gt;cost&lt;SPAN class="token punctuation"&gt;)&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;as&lt;/SPAN&gt; cost &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;from&lt;/SPAN&gt; have &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;group&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;by&lt;/SPAN&gt; id&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token step keyword"&gt;quit&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;STRONG&gt;&lt;SPAN class="token punctuation"&gt;However, what if&amp;nbsp;my data instead looked like this:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token step keyword"&gt;data&lt;/SPAN&gt; have&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="token input"&gt;&lt;SPAN class="token input keyword"&gt;input&lt;/SPAN&gt; id cost date;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="token datalines string"&gt;&lt;SPAN class="token keyword"&gt;datalines&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp; Monday&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; Monday&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp; Tuesday&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;3&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp; Wednesday&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;3&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp; Wednesday&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token datalines string"&gt;&lt;SPAN class="token punctuation"&gt;How would you amend the above code to include the date in the output table?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token step keyword"&gt;proc sql&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;create&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;table&lt;/SPAN&gt; want &lt;SPAN class="token keyword"&gt;as&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;select&lt;/SPAN&gt; id&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;STRONG&gt;date&lt;/STRONG&gt;, &lt;SPAN class="token function"&gt;sum&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;(&lt;/SPAN&gt;cost&lt;SPAN class="token punctuation"&gt;)&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;as&lt;/SPAN&gt; cost &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;from&lt;/SPAN&gt; have &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;group &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="token proc-sql"&gt;&lt;SPAN class="token sql language-sql"&gt;&lt;SPAN class="token keyword"&gt;by&lt;/SPAN&gt; id&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token step keyword"&gt;quit&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token punctuation"&gt;this fails to append the observations so do I instead need to also add date to the by statement? (Bearing in mind that each id always has the same day associated with it)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="token punctuation"&gt;Thanks! &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Oct 2020 16:55:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692169#M210797</guid>
      <dc:creator>EC27556</dc:creator>
      <dc:date>2020-10-16T16:55:28Z</dc:date>
    </item>
    <item>
      <title>Re: How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692171#M210798</link>
      <description>&lt;P&gt;Is this a realistic example? Every transaction on Monday, regardless of whether it was Monday this week or Monday last week, or Monday from 3.25 years ago, will get lumped together. Is that what you want? If not, can you give us a more realistic example?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Assuming you have more realistic dates, then PROC SUMMARY or PROC MEANS is the way to go here.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc summary nway data=have;
    class id date;
    var cost;
    output out=want sum=;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 16 Oct 2020 17:01:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692171#M210798</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2020-10-16T17:01:29Z</dc:date>
    </item>
    <item>
      <title>Re: How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692172#M210799</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;group by id,date;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 16 Oct 2020 17:05:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692172#M210799</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2020-10-16T17:05:47Z</dc:date>
    </item>
    <item>
      <title>Re: How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692173#M210800</link>
      <description>&lt;P&gt;Add the new group:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table want as
select id, date, sum(cost) as cost
from have
group by id, date;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 16 Oct 2020 17:06:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692173#M210800</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2020-10-16T17:06:16Z</dc:date>
    </item>
    <item>
      <title>Re: How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692185#M210806</link>
      <description>Thanks, I'm curious to know why you would recommend proc means/summary over sql though!&lt;BR /&gt;&lt;BR /&gt;The example wasn't very logical, I admit! I am essentially considering a situation where you have lots of repeating observations which are almost identical except for cost value. I.e. if you have id=1 for 3 observations in the dataset, all the variable values will be the same (e.g. height, weight) apart from cost. I am looking for code which enables to turn those 3 observations into 1 observation with a summed cost variable!</description>
      <pubDate>Fri, 16 Oct 2020 17:26:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692185#M210806</guid>
      <dc:creator>EC27556</dc:creator>
      <dc:date>2020-10-16T17:26:37Z</dc:date>
    </item>
    <item>
      <title>Re: How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692188#M210808</link>
      <description>Great, thanks! And so, generally, if you have repeating observations that are identical in terms of variable values other than the cost variable, you would simply keep adding the other variable names to the select and group by statements then? does the order matter? I assume ID always has to be first in the by statement but otherwise no as long as ID is unique?</description>
      <pubDate>Fri, 16 Oct 2020 17:31:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692188#M210808</guid>
      <dc:creator>EC27556</dc:creator>
      <dc:date>2020-10-16T17:31:03Z</dc:date>
    </item>
    <item>
      <title>Re: How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692198#M210814</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/350407"&gt;@EC27556&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;Thanks, I'm curious to know why you would recommend proc means/summary over sql though!&lt;BR /&gt;&lt;BR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Means/Summary can be faster than SQL.&lt;/P&gt;
&lt;P&gt;Summary can produce groups of summaries of 1) over the whole data set, 2) the id values only,&amp;nbsp; 3) the dates only and 4) the Id*date combinations. With one call to the procedure.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Summary allows use of features like variable lists. Consider a data set with&amp;nbsp; 100 variables. In Proc SQL you have to list every single variable to get the summary. You could sum all the numeric variables by using: Var _numeric_. Or lists of common based names like var_: using all variables whose names start with Var_, or the -- (two dashes) that get contiguous variables, or iterated list like var1 - var25 to summarize 25 variables with names like that.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The AUTONAME feature means that if you request multiple statistics for variables then the output variables are named with the statistic as a suffix. SQL requires setting a specific name for each.&lt;/P&gt;
&lt;P&gt;And the syntax for mixing which variables get which statistics when they are not all getting the same statistic is again way shorter than Proc SQL:&amp;nbsp;&amp;nbsp; mean(var1-var10) =&amp;nbsp;&amp;nbsp;&amp;nbsp; stddev(var5-var15) = , for example instead of 10 Mean(variable) and a different 10 stddev(variable).&lt;/P&gt;
&lt;P&gt;And I'm not sure if SQL does percentiles.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Proc means/summary can use multilabel formats for variables, Proc SQL can't.&lt;/P&gt;
&lt;P&gt;Some other options like COMPLETETYPES can create output that Proc SQL won't without additional programming.&lt;/P&gt;
&lt;P&gt;Check the syntax for TYPES, ID, and WAYS for other output that would require lots of Proc SQL programming to accomplish.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It is a whole lot easier to apply Weights to statistics in Proc Mean/summary.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And more.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Oct 2020 17:53:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692198#M210814</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2020-10-16T17:53:43Z</dc:date>
    </item>
    <item>
      <title>Re: How to merge appended values (continued from yesterday)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692215#M210819</link>
      <description>&lt;P&gt;I think &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13879"&gt;@Reeza&lt;/a&gt; &lt;A href="https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values/m-p/691910#M210669" target="_self"&gt;mentioned this&lt;/A&gt; in the other thread. PROC SUMMARY/PROC MEANS is much better if you have many variables to sum, or many statistics to produce, or many different ways to slice the data, or any combination of these. In this very simple example, which covers only a small percent of real world applications, PROC SQL is fine. In other less simple examples, PROC SUMMARY/PROC MEANS will get you there with less typing, and probably less execution time as well. Keep that in mind as your SAS use continues and you find more complicated problems for which you have to slice and dice the data in several ways, and compute one or multiple statistics on one or multiple variables.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;And, &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/350407"&gt;@EC27556&lt;/a&gt; , as you know there is a phrase in the English language "Please listen to reason", but here in the SAS Communities, it is "Please listen to Reeza". And please listen to &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13884"&gt;@ballardw&lt;/a&gt; as well.&lt;/P&gt;</description>
      <pubDate>Fri, 16 Oct 2020 21:57:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-merge-appended-values-continued-from-yesterday/m-p/692215#M210819</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2020-10-16T21:57:11Z</dc:date>
    </item>
  </channel>
</rss>

