<?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 do I create one longitudinal data set from multiple SAS data sets? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496331#M131239</link>
    <description>&lt;P&gt;1) Who ever is designing the data entry/collection process needs a headspace and alignment check. If the data points are the same then the names should not change.&lt;/P&gt;
&lt;P&gt;2) If the plan ahead of time was to analyze the data in SAS then the use of columns/variable names like "200" should have been avoided.&lt;/P&gt;
&lt;P&gt;3) I would ask whoever set this up "What was wrong with using descriptive names like Results&amp;nbsp; in the first place?"&lt;/P&gt;</description>
    <pubDate>Mon, 17 Sep 2018 17:30:26 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2018-09-17T17:30:26Z</dc:date>
    <item>
      <title>How do I create one longitudinal data set from multiple SAS data sets?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496061#M131089</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have multiple SAS data sets that are measuring the same thing across multiple study visits. Unfortunately, the variable names are not the same across the data sets even though they are measuring the same thing (with the exception of ID). The data I have looks something like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Name of data sets:&lt;/STRONG&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Visit_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; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Visit_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; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Visit_3&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;Variable names: &amp;nbsp;&lt;/STRONG&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ID &amp;nbsp; &amp;nbsp; &amp;nbsp; 200 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;101 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;300 &amp;nbsp; &amp;nbsp; &amp;nbsp;102 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 400 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;103&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Variables 200, 300 and 400 are all measuring whether the visit was attended.&lt;/P&gt;&lt;P&gt;Variables 101,102 and 103 are all measuring the results of a test.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am trying to create one data set that looks something like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Variable names:&lt;/STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ID &amp;nbsp; &amp;nbsp; &amp;nbsp; Visit_number &amp;nbsp; &amp;nbsp; &amp;nbsp;Visit_attended &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Results&lt;/P&gt;&lt;P&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;001 &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;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&lt;/P&gt;&lt;P&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;001 &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;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&lt;/P&gt;&lt;P&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;001 &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;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;1&lt;/P&gt;&lt;P&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;002 &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;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&lt;/P&gt;&lt;P&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;002 &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;0 &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; .&lt;/P&gt;&lt;P&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;002 &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;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&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How might I go about solving this issue?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;-Thank you&lt;/P&gt;</description>
      <pubDate>Sun, 16 Sep 2018 17:59:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496061#M131089</guid>
      <dc:creator>lousam</dc:creator>
      <dc:date>2018-09-16T17:59:24Z</dc:date>
    </item>
    <item>
      <title>Re: How do I create one longitudinal data set from multiple SAS data sets?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496093#M131107</link>
      <description>&lt;P&gt;Like this?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data WANT;
  set Visit_1(rename=('200'n=VISIT_NUMBER '101'n=VISIT_ATTENDED))
      Visit_2(rename=('300'n=VISIT_NUMBER '102'n=VISIT_ATTENDED))
      Visit_3(rename=('400'n=VISIT_NUMBER '103'n=VISIT_ATTENDED))
  ;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 17 Sep 2018 00:27:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496093#M131107</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2018-09-17T00:27:48Z</dc:date>
    </item>
    <item>
      <title>Re: How do I create one longitudinal data set from multiple SAS data sets?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496110#M131114</link>
      <description>&lt;P&gt;Or like this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data WANT;
  set Visit_1 - visit_3;
  visit_number = coalesce('200'n, '300'n, '400'n);
  visit_attended = coalesce('101'n, '102'n, '103'n);
keep ID visit_number visit_attended;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 17 Sep 2018 03:19:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496110#M131114</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2018-09-17T03:19:18Z</dc:date>
    </item>
    <item>
      <title>Re: How do I create one longitudinal data set from multiple SAS data sets?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496130#M131130</link>
      <description>&lt;P&gt;Do you really have a variable named 200? Why? If so then you need use name literal to refer to it in code&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;'200'n&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;But I will just assume that it has normal variable name, like VAR200, instead.&lt;/P&gt;
&lt;P&gt;Sounds like you want to interleave the observations.&amp;nbsp; You could add RENAME= dataset options to the input datasets, but why not just leave the names as they are and populate new variables.&amp;nbsp; Since you are using SET only one of the three variables will have a value for any given observation you could use almost any aggregation function to find the non-missing value.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want ;
  set visit_1 - visit_3 ;
  by id;
  Visit_attended = coalesce(var200,var300,var400);
  Results = coalesce(var101,var102,var103);
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;If you do not already have a Visit_number variable then add the INDSNAME= option to the SET statement and add code to calculate Visit_number from the name of the dataset that contributed the observation.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 06:35:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496130#M131130</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2018-09-17T06:35:27Z</dc:date>
    </item>
    <item>
      <title>Re: How do I create one longitudinal data set from multiple SAS data sets?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496331#M131239</link>
      <description>&lt;P&gt;1) Who ever is designing the data entry/collection process needs a headspace and alignment check. If the data points are the same then the names should not change.&lt;/P&gt;
&lt;P&gt;2) If the plan ahead of time was to analyze the data in SAS then the use of columns/variable names like "200" should have been avoided.&lt;/P&gt;
&lt;P&gt;3) I would ask whoever set this up "What was wrong with using descriptive names like Results&amp;nbsp; in the first place?"&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 17:30:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-create-one-longitudinal-data-set-from-multiple-SAS-data/m-p/496331#M131239</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2018-09-17T17:30:26Z</dc:date>
    </item>
  </channel>
</rss>

