<?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: New SAS User: Student needing some help in New SAS User</title>
    <link>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838918#M36288</link>
    <description>&lt;P&gt;PS Kudos for posting example data in a working data step. Much appreciated.&lt;/P&gt;</description>
    <pubDate>Mon, 17 Oct 2022 09:10:49 GMT</pubDate>
    <dc:creator>Kurt_Bremser</dc:creator>
    <dc:date>2022-10-17T09:10:49Z</dc:date>
    <item>
      <title>New SAS User: Student needing some help</title>
      <link>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838913#M36284</link>
      <description>&lt;P&gt;Hello experts! I need help in merging this data set. Everything comes out fine expect the 2nd column "visit" please see pictures below. Any guidance will be much appreciated.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the directions for my problem:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Patients underwent knee replacement surgeries for one or both knees. The data record patient id, the replaced knee number (1 or 2), and satisfaction scores pre-operatively, one day, one week, and one month after the surgery. The data are&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Patient &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Knee&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Score&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Score at&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Score at&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Score at&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number&amp;nbsp;&amp;nbsp; Pre-op&amp;nbsp;&amp;nbsp; one day&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; one week&amp;nbsp;&amp;nbsp; one month&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 01 &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5&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;7 &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;&amp;nbsp;&amp;nbsp; 02 &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;10 &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&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;&amp;nbsp;&amp;nbsp; 02 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;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;3 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&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;8 &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;&amp;nbsp;&amp;nbsp; 03 &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &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;&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;&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&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 03 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;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; 0 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6 &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; 9 &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; 9&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 04 &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 &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 &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;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;C) Use the MERGE statement to create the merged file&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Here is my code for part C:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;data examEX4;
input id $ KneeNumber ScorePre Score1Day Score1Week Score1Month;
cards;
    01           1               0              5                7                 10
    02           1               0             10               15                 15
    02           2               3              5                8                 10
    03           1               0              3                3                  3
    03           2               0              6                9                  9
    04           1               0              4               10                 10
;

data A(keep=id visit score_knee1);
set examEX4;
array x[4] ScorePre Score1Day Score1Week Score1Month;
	do i=1 to 4;
		visit=i;
		score_knee1=x[i]; 
if KneeNumber=1;
		output;
	end;
run;
data B(keep=id visit score_knee2);
set examEX4;
array x[4] ScorePre Score1Day Score1Week Score1Month;
	do i=1 to 4;
		visit=i;
		score_knee2=x[i]; 
if KneeNumber=2;
		output;
	end;
run;

proc sort data=A;
by id;

proc sort data=B;
by id;
run;

data A_B_merged;
	merge A B;
	by id;
run; 

proc print noobs;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;However my output looks like this:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="My Output.png" style="width: 290px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/76242iBB4717E8B8AB3C2A/image-size/large?v=v2&amp;amp;px=999" role="button" title="My Output.png" alt="My Output.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;when it needs to look like this:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Required Output.png" style="width: 296px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/76243i488968AB622341DE/image-size/large?v=v2&amp;amp;px=999" role="button" title="Required Output.png" alt="Required Output.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Thank you for any help.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Oct 2022 08:25:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838913#M36284</guid>
      <dc:creator>BeEyeSea</dc:creator>
      <dc:date>2022-10-17T08:25:24Z</dc:date>
    </item>
    <item>
      <title>Re: New SAS User: Student needing some help</title>
      <link>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838917#M36287</link>
      <description>&lt;P&gt;You need to create a format for your numeric variable which displays the texts instead of the numbers.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc format;
value visit
  1 = "pre op"
  2 = "day 1"
  /* and so on */
;
run;

proc print data=a_b_merged noobs;
format visit visit.;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 17 Oct 2022 09:09:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838917#M36287</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2022-10-17T09:09:39Z</dc:date>
    </item>
    <item>
      <title>Re: New SAS User: Student needing some help</title>
      <link>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838918#M36288</link>
      <description>&lt;P&gt;PS Kudos for posting example data in a working data step. Much appreciated.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Oct 2022 09:10:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838918#M36288</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2022-10-17T09:10:49Z</dc:date>
    </item>
    <item>
      <title>Re: New SAS User: Student needing some help</title>
      <link>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838920#M36289</link>
      <description>&lt;P&gt;Thanks for posting data in usable form.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I know this is an exam task, but:&lt;/P&gt;
&lt;P&gt;The need to use a merge is artificially generated by creating multiple datasets. Proc transpose seems to be better suited to solve the problem. Or have failed to see something?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sort data=examEX4;
   by id KneeNumber;
run;

proc transpose data=examEX4 out=t_want prefix=score_knee name= Visit ;
   by id;
   var ScorePre Score1Day Score1Week Score1Month;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Oct 2022 09:28:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838920#M36289</guid>
      <dc:creator>andreas_lds</dc:creator>
      <dc:date>2022-10-17T09:28:19Z</dc:date>
    </item>
    <item>
      <title>Re: New SAS User: Student needing some help</title>
      <link>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838959#M36305</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Just a note... see this NOTE in your log:&lt;/P&gt;
&lt;PRE&gt;40   data A_B_merged;
41     merge A B;
42     by id;
43   run;

NOTE: MERGE statement has more than one data set with repeats of BY values &amp;lt;--- bad Note!
NOTE: There were 16 observations read from the data set WORK.A.
NOTE: There were 8 observations read from the data set WORK.B.
NOTE: The data set WORK.A_B_MERGED has 16 observations and 4 variables.&lt;/PRE&gt;
&lt;P&gt;That NOTE means you have done a many to many merge.&amp;nbsp; Typically I treat that note as an error message, because the MERGE statement implements a many-to-many merge in a manner that is not intuitive and can lead to surprising results if you don't thoroughly understand the DATA step language.&amp;nbsp; It does not give you a cartesian product.&amp;nbsp; I don't think I've ever had a situation where I intentionally did a many-to-many merge.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In this case, I think your result could be trusted to be correct, because you know that there are always four records per ID in both work.A and work.B, or there might be 0 records per ID.&amp;nbsp; You also know that the four records are sorted in the same order within ID (visit=1 to visit=4), because you created the data that way.&amp;nbsp; Your merge essentially merges by ID, and when there are multiple records with the same ID, it merges by them sequentially based on order.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Still, as a general practice I would change the BY statement to be:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;	by id Visit ;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Because that way the BY statement is defining a unique key.&amp;nbsp; My rule is in a MERGE of two data sets, you always need at least one data set to be unique by the BY variables.&amp;nbsp; This will avoid that note in the log.&lt;/P&gt;
&lt;PRE&gt;40   data A_B_merged;
41     merge A B;
42     by id visit;
43   run;

NOTE: There were 16 observations read from the data set WORK.A.
NOTE: There were 8 observations read from the data set WORK.B.
NOTE: The data set WORK.A_B_MERGED has 16 observations and 4 variables.
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Oct 2022 12:47:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/New-SAS-User-Student-needing-some-help/m-p/838959#M36305</guid>
      <dc:creator>Quentin</dc:creator>
      <dc:date>2022-10-17T12:47:09Z</dc:date>
    </item>
  </channel>
</rss>

