<?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: Uexpected merged results from two macro datasets in SAS Studio</title>
    <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724778#M9868</link>
    <description>Sorry, data jan; set small_data; is not right.&lt;BR /&gt;&lt;BR /&gt;Thank you.&lt;BR /&gt;ak.</description>
    <pubDate>Tue, 09 Mar 2021 08:43:26 GMT</pubDate>
    <dc:creator>ak2011</dc:creator>
    <dc:date>2021-03-09T08:43:26Z</dc:date>
    <item>
      <title>Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724097#M9851</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;Thanks to all who provided solutions/comments to my question of merging two macro results. However, the problem has still not been solved, so I would appreciate if someone could help me.&lt;/P&gt;
&lt;P&gt;I am reposting the same question. The unexpected merged results (17 observations) this time is given for your perusal.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;In my previous posts,I mentioned that I wanted to merge 2 macro results datasets :Table 1 (janitor)&lt;BR /&gt;and Table 2 (Baker). Janitor dataset is called jan and baker is bake.&lt;BR /&gt;The merged file mjb produced unexpected results (Table 3-17 observations).&lt;BR /&gt;I have still not found the solution to&lt;BR /&gt;my problem inspite of reading extensively on the subject from SAS Forum answers, SAS online documentation and so on.&lt;BR /&gt;I would appreciate your help,please.&lt;BR /&gt;&lt;BR /&gt;My code, data and results are found below. My expected output is placed after results.&lt;BR /&gt;Thanks in advance. [The log has no errors but too long so not shown].&lt;BR /&gt;ak.&lt;/P&gt;
&lt;PRE&gt;/**MACRO*/&lt;BR /&gt;&lt;BR /&gt;data full_tdata;&lt;BR /&gt;input id$ 1-6 job 7-8 jobyrin 9-11 jobyrout 18-20  icode$ 23-27  lung$ 29-35;&lt;BR /&gt;datalines;&lt;BR /&gt;OSa13	3	73	      78	  6191	 cacase&lt;BR /&gt;OSa30	1	39	      46	  7181	 cacase&lt;BR /&gt;OSa30	3	56	      64	  6191	 cacase&lt;BR /&gt;OSa73	1	23	      31	  7181	 popcon&lt;BR /&gt;OSa73	2	31	      42	  5130	 popcon&lt;BR /&gt;OSa86	3	46	      60	  6198	 cacon&lt;BR /&gt;OSa86	4	60	      70	  5130	 cacon&lt;BR /&gt;OSa93	3	68	      72	  6121	 popcon&lt;BR /&gt;OSf26	1	54	      54	  6198	 popcon&lt;BR /&gt;OSf26	2	70	      70	  6191	 popcon&lt;BR /&gt;OSh77	1	63	      66	  6121	 cacon&lt;BR /&gt;OSh77	2	66	      70	  6121	 cacon&lt;BR /&gt;OSh77	3	70	      71	  6121	 cacon&lt;BR /&gt;OSi84	1	67	      75	  6191	 cacase&lt;BR /&gt;OSi84	2	75	      81	  6191	 cacase&lt;BR /&gt;OSj17	3	60	      75	  6191	 cacase&lt;BR /&gt;OSj17	4	65	      70	  6191	 cacase&lt;BR /&gt;;&lt;BR /&gt;&lt;BR /&gt;proc print data=full_tdata;&lt;BR /&gt;title 'Table O: Original full_tdata file'; run;&lt;BR /&gt;&lt;BR /&gt;data small_tdata; set full_tdata; drop lung;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;*max 4 jobs per subject;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;%macro duration(database=small_tdata, icode=6191, Job_title=janitor);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;*Creating a dataset containing all the jobs with selected icode;&lt;BR /&gt;&lt;BR /&gt;data &amp;amp;Job_title;&lt;BR /&gt;set &amp;amp;database;&lt;BR /&gt;if icode = &amp;amp;icode;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;*transposing dataset so that the YEARIN and YEAROUT of all jobs held by a subject are in the same row;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;*YEARIN;&lt;BR /&gt;&lt;BR /&gt;proc transpose data = &amp;amp;Job_title out = &amp;amp;Job_title._yearin prefix = YEARIN;&lt;BR /&gt;by ID;&lt;BR /&gt;var jobyrin;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;proc sort data = &amp;amp;Job_title._yearin;&lt;BR /&gt;by id;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;*YEAROUT;&lt;BR /&gt;&lt;BR /&gt;proc transpose data = &amp;amp;Job_title out = &amp;amp;Job_title._yearout prefix = YEAROUT;&lt;BR /&gt;by ID;&lt;BR /&gt;var jobyrout;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;proc sort data = &amp;amp;Job_title._yearout;&lt;BR /&gt;by id;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;data &amp;amp;Job_title._final;&lt;BR /&gt;merge &amp;amp;Job_title._yearin &amp;amp;Job_title._yearout;&lt;BR /&gt;by ID;&lt;BR /&gt;&lt;BR /&gt;array YEARIN (3) YEARIN1 YEARIN2 YEARIN3;&lt;BR /&gt;array YEAROUT (3) YEAROUT1 YEAROUT2 YEAROUT3;&lt;BR /&gt;&lt;BR /&gt;array YEARINv2 (3) YEARIN2 YEARIN3 YEARIN4 ;&lt;BR /&gt;array YEAROUTv2 (3) YEAROUT2 YEAROUT3 YEAROUT4;&lt;BR /&gt;&lt;BR /&gt;array YEARIN_F (4) YEARIN1 YEARIN2 YEARIN3 YEARIN4;&lt;BR /&gt;array YEAROUT_F (4) YEAROUT1 YEAROUT2 YEAROUT3 YEAROUT4;&lt;BR /&gt;&lt;BR /&gt;Array duration (4) Dur1 Dur2 Dur3 Dur4;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;do i = 1 to 3;&lt;BR /&gt;&lt;BR /&gt;if yearin(i) ne . and  yearinv2(i) ne . and yearinv2(i) le yearout(i) and yearoutv2(i) ge yearout(i) then do; yearinv2(i) = yearin(i); yearin(i) = .;yearout(i) = .;end;&lt;BR /&gt;else if  yearin(i) ne . and  yearinv2(i) ne . and yearinv2(i) le yearout(i) and yearoutv2(i) lt yearout(i) then do; yearinv2(i) = yearin(i);yearoutv2(i) = yearout(i); yearin(i) = .;yearout(i) = .;end;&lt;BR /&gt;&lt;BR /&gt;end;&lt;BR /&gt;&lt;BR /&gt;do i = 1 to 4;&lt;BR /&gt;&lt;BR /&gt;if YEARIN_F(i) = . then  YEARIN_F(i) = 0;&lt;BR /&gt;if YEAROUT_F(i) = . then  YEAROUT_F(i) = 0;&lt;BR /&gt;&lt;BR /&gt;duration(i) = YEAROUT_F(i) - YEARIN_F(i);&lt;BR /&gt;if YEARIN_F(i) ne 0 and YEAROUT_F(i) = YEARIN_F(i) then duration(i) = 0.5;&lt;BR /&gt;end;&lt;BR /&gt;&lt;BR /&gt;&amp;amp;Job_title._dur = Dur1 + Dur2 + Dur3 + Dur4;&lt;BR /&gt;&lt;BR /&gt;&amp;amp;Job_title._ever = 1;&lt;BR /&gt;&lt;BR /&gt;keep ID &amp;amp;Job_title._dur &amp;amp;Job_title._ever;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;%MEND duration;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* 1st macro-janitor icode 6191*/&lt;BR /&gt;&lt;BR /&gt;data jan; set small_tdata;&lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt;%duration(database=small_tdata, icode=6191, Job_title=janitor);&lt;BR /&gt;  &lt;BR /&gt;&lt;BR /&gt;proc print; &lt;BR /&gt;title 'Table 1: janitor records';&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* 2nd macro-baker icode 7181*/&lt;BR /&gt;&lt;BR /&gt;data bake; set small_tdata;&lt;BR /&gt; &lt;BR /&gt;%duration(database=small_tdata,icode=7181, Job_title=baker);&lt;BR /&gt;&lt;BR /&gt;proc print; &lt;BR /&gt;title 'Table 2: baker records';&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/*Merging the janitor (Table 1) and baker(Table 2) files*/&lt;BR /&gt;&lt;BR /&gt;proc sort data=jan; by id;&lt;BR /&gt;&lt;BR /&gt;proc sort data=bake; by id;&lt;BR /&gt;&lt;BR /&gt;data mjb; merge  jan bake; by id; run;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;proc print data=mjb;&lt;BR /&gt;Title 'Table 3: Merged Table 1(janitor) and Table 2 (baker)-Unexpected merge&lt;BR /&gt;This is not what I want';&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;&lt;/PRE&gt;
&lt;P&gt;Table O: Original full_tdata file&lt;/P&gt;
&lt;TABLE&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TD colspan="7"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Obs&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;id&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;job&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;jobyrin&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;jobyrout&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;icode&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;lung&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa13&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;73&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;78&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6191&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacase&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa30&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;39&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;46&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;7181&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacase&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa30&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;56&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;64&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6191&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacase&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa73&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;23&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;31&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;7181&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;popcon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa73&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;31&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;42&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;5130&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;popcon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;6&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa86&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;46&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;60&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6198&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;7&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa86&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;4&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;60&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;5130&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;8&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa93&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;68&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;72&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6121&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;popcon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;9&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSf26&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;54&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;54&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6198&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;popcon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;10&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSf26&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6191&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;popcon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;11&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSh77&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;63&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;66&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6121&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;12&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSh77&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;66&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6121&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;13&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSh77&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;71&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6121&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacon&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;14&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSi84&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;67&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;75&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6191&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacase&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;15&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSi84&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;75&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;81&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6191&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacase&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;16&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSj17&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;60&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;75&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6191&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacase&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;17&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSj17&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;4&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;65&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;6191&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;cacase&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Table 1: janitor records&lt;/P&gt;
&lt;TABLE&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TD colspan="4"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Obs&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;id&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;janitor_dur&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;janitor_ever&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa13&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;5.0&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa30&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;8.0&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSf26&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;0.5&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSi84&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;14.0&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSj17&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;15.0&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Table 2: baker records&lt;/P&gt;
&lt;TABLE&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TD colspan="4"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Obs&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;id&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;baker_dur&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;baker_ever&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa30&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;7&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa73&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;8&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Table 3: Merged Table 1(janitor) and Table 2 (baker)-Unexpected mergeThis is not what I want&lt;/P&gt;
&lt;TABLE&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TD colspan="5"&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Obs&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;id&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;job&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;jobyrin&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;jobyrout&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa13&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;73&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;78&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa30&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;39&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;46&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;3&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa30&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;56&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;64&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;4&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa73&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;23&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;31&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa73&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;31&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;42&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;6&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa86&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;46&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;60&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;7&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa86&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;4&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;60&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;8&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSa93&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;68&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;72&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;9&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSf26&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;54&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;54&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;10&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSf26&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;11&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSh77&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;63&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;66&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;12&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSh77&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;66&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;13&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSh77&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;71&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;14&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSi84&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;1&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;67&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;75&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;15&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSi84&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;2&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;75&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;81&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;16&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSj17&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;3&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;60&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;75&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;17&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;OSj17&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;4&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;65&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;70&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp;Expected output:&lt;/P&gt;
&lt;P&gt;id&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; janitor_dur&amp;nbsp; &amp;nbsp; janitor_ever&amp;nbsp; &amp;nbsp;baker_dur&amp;nbsp; &amp;nbsp; &amp;nbsp; baker_ever&lt;BR /&gt;osa13&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;1&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; &amp;nbsp;0&lt;BR /&gt;osa30&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;1&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;1&lt;BR /&gt;osa73&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; 0&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;1&lt;BR /&gt;osf26&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0.5&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; 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; &amp;nbsp;0&lt;BR /&gt;osi84&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;14&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; 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; &amp;nbsp;0&lt;BR /&gt;osj17&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;1&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; &amp;nbsp;0&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Tables 1 and 2 are ok, Table 3 is not good: My aim is to merge Tables 1 and 2 to obtain the expected output above.&lt;/P&gt;
&lt;P&gt;I would finally merge janitor and baker files (merged Tables 1&amp;amp;2) with table 0: original file.&lt;/P&gt;
&lt;P&gt;Please help. Thanks.&lt;/P&gt;
&lt;P&gt;ak.&lt;/P&gt;</description>
      <pubDate>Fri, 05 Mar 2021 23:45:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724097#M9851</guid>
      <dc:creator>ak2011</dc:creator>
      <dc:date>2021-03-05T23:45:07Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724100#M9852</link>
      <description>&lt;P&gt;&lt;FONT size="6" color="#800080"&gt;&lt;STRONG&gt;READ YOUR BLINKING LOG.&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="4" color="#000000"&gt;&lt;U&gt;Your log will show the names of the data sets created and how many records.&lt;/U&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="4" color="#000000"&gt;Your printed output is &lt;EM&gt;&lt;U&gt;&lt;STRONG&gt;not from bake nor jan&lt;/STRONG&gt;&lt;/U&gt;&lt;/EM&gt;&lt;EM&gt;&lt;U&gt;. &lt;/U&gt;&lt;/EM&gt; The output data set names from your macro are &lt;STRONG&gt;janitor_final&lt;/STRONG&gt; and &lt;STRONG&gt;baker_final&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 06 Mar 2021 00:01:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724100#M9852</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2021-03-06T00:01:36Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724104#M9854</link>
      <description>Your macro is generating tables with the final names of &amp;amp;Job_title._final, so baker_final and janitor_final. And using Janitor and Baker, not Jan/Bake so the references seem inconsistent. &lt;BR /&gt;&lt;BR /&gt;Where are the Jan/baker files at the end coming from? &lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Sat, 06 Mar 2021 00:55:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724104#M9854</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2021-03-06T00:55:18Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724140#M9855</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13879"&gt;@Reeza&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;Your macro is generating tables with the final names of &amp;amp;Job_title._final, so baker_final and janitor_final. And using Janitor and Baker, not Jan/Bake so the references seem inconsistent. &lt;BR /&gt;&lt;BR /&gt;Where are the Jan/baker files at the end coming from? &lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;OP had two bits like&lt;/P&gt;
&lt;PRE&gt;data jan; set small_tdata;&lt;/PRE&gt;
&lt;P&gt;called immediately before the %duration macro call. &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 06 Mar 2021 09:47:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724140#M9855</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2021-03-06T09:47:59Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724157#M9856</link>
      <description>&lt;P&gt;Just read the SAS log to see what the actual names of the datasets you macro generates.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Note it is best not to start using macro code to generate SAS code until you understand how to generate SAS code yourself. Otherwise you will just confuse yourself.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;What are you trying to accomplish?&amp;nbsp; Do you even need macro code?&amp;nbsp; To find the duration it is easier with your original structure.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data full_tdata;
  input id $ job jobyrin jobyrout icode $ lung $;
datalines;
OSa13 3 73 78 6191 cacase
OSa30 1 39 46 7181 cacase
OSa30 3 56 64 6191 cacase
OSa73 1 23 31 7181 popcon
OSa73 2 31 42 5130 popcon
OSa86 3 46 60 6198 cacon
OSa86 4 60 70 5130 cacon
OSa93 3 68 72 6121 popcon
OSf26 1 54 54 6198 popcon
OSf26 2 70 70 6191 popcon
OSh77 1 63 66 6121 cacon
OSh77 2 66 70 6121 cacon
OSh77 3 70 71 6121 cacon
OSi84 1 67 75 6191 cacase
OSi84 2 75 81 6191 cacase
OSj17 3 60 75 6191 cacase
OSj17 4 65 70 6191 cacase
;

data job_duration ;
  set full_tdata;
  length job_name $10 ;
  if icode='6191' then job_name='janitor';
  else if icode='7181' then job_name='baker';
  else job_name='other';

  duration = jobyrout - jobyrin;

run;


proc summary data=job_duration nway ;
  by id;
  class job_name ;
  var duration ;
  output out=want sum=;
run;

options missing='0';
proc report data=want ;
  column id duration,job_name ;
  define id / group;
  define job_name / across ' ';
  define duration / ' ';
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;   id            baker    janitor      other
  OSa13             0          5          0
  OSa30             7          8          0
  OSa73             8          0         11
  OSa86             0          0         24
  OSa93             0          0          4
  OSf26             0          0          0
  OSh77             0          0          8
  OSi84             0         14          0
  OSj17             0         20          0

&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 06 Mar 2021 16:40:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724157#M9856</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2021-03-06T16:40:20Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724321#M9857</link>
      <description>Thanks Tom,&lt;BR /&gt;Actually, I prefer your approach to macro. The above dataset is a sample of a larger one and when I ran the larger macro I usually receive errors about quoted strings,etc. like shown below:&lt;BR /&gt;&lt;BR /&gt;NOTE: The quoted string currently being processed has become more than 262 bytes long.  You might have unbalanced quotation marks.&lt;BR /&gt;&lt;BR /&gt;NOTE 49-169: The meaning of an identifier after a quoted string might change in a future SAS release.  Inserting white space &lt;BR /&gt;              between a quoted string and the succeeding identifier is recommended.&lt;BR /&gt;*************************************************************************************************&lt;BR /&gt;&lt;BR /&gt; So I would like to try your approach:&lt;BR /&gt;Basically, these are my objectives:&lt;BR /&gt;&lt;BR /&gt;-Find duration in years (jobyrout-jobyrin), if no overlap in years-calculate it direct:&lt;BR /&gt;- If overlap eg:osa73 jobs 1 (jobyrout 31) and 2 (jobyrin 31): then final duration will be from 23 to  42 ie. 42 minus 23, so  osa73 will have one line. Same with osh77 jobs 1 and 2: 66 overlaps so final duration will be from 63-70 ie. 70 minus 63.&lt;BR /&gt;-if  jobyrin=jobyrout assign 0.5. &lt;BR /&gt;-osj17 job 3 duration :60-75 and job 4 duraiton 65-70: another special overlap: Here duration for osj17 will be 60 to 75 ie. 75-60.&lt;BR /&gt;Please read the summary of the task below: &lt;BR /&gt;&lt;BR /&gt;**************************************************************************************************************&lt;BR /&gt;          &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;              Please, this is what I want to achieve: &lt;BR /&gt;&lt;BR /&gt;        1) Verify if job 1 overlaps with job 2. If not, do nothing. If yes, assign job 1 start year to job 2 and, when **necessary (see when necessary situation below), also assign job 1 end year to job 2. &lt;BR /&gt;	   Once this is done, job 1 start and end years are recoded as missing to eliminate this job from the duration calculation (to avoid counting twice the same years)&lt;BR /&gt;&lt;BR /&gt;          ** When necessary: eg. Please see osj 17 jobs 3 and 4:&lt;BR /&gt;&lt;BR /&gt;       If job 1 go from 1960 to 1975 and job 2 go from 1965 to 1970,&lt;BR /&gt;        then the duration for those two jobs should be from 1960 to 1975.  &lt;BR /&gt;    Since the code work by “deleting” the earliest jobs and modifying the later job dates, &lt;BR /&gt;     we need to recode job 2 YEARIN and YEAROUT to the YEARIN and YEAROUT of job 1.&lt;BR /&gt; &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;	2) Repeat the process with the newly recoded job 2 (or original job 2 if it didn't overlap with job 1) and job 3. This process is repeated until all jobs are examined (up to the maximum number of jobs specified by the array length)&lt;BR /&gt;&lt;BR /&gt;	3) Assign a value of 0 the any missing start or stop year and calculate the duration of each remaining job (jobs with same start and stop years are coded as&lt;BR /&gt;	   lasting 0.5 year&lt;BR /&gt;&lt;BR /&gt;	4) Sum all the durations to obtain the final duration variable&lt;BR /&gt;&lt;BR /&gt;	5) Create the final dataset including IDs, the total duration variable, and the ever held job variable&lt;BR /&gt;&lt;BR /&gt;* So What you did is right, two more things to do, however,please:&lt;BR /&gt;-Assigning 0.5 to same jobyrout = 70  and jobyrin= 70  for eg. osf26 job 6. 70-70 not zero but 0.5 in this situation.&lt;BR /&gt;-the special overlap situation: osj17 jobs 3 and 4.&lt;BR /&gt;Thanks very much for your assistance.&lt;BR /&gt;I would appreciate if you could help me fix the 2 tasks in your code above.&lt;BR /&gt;&lt;BR /&gt;Thanks again.&lt;BR /&gt;&lt;BR /&gt;ak.</description>
      <pubDate>Mon, 08 Mar 2021 00:18:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724321#M9857</guid>
      <dc:creator>ak2011</dc:creator>
      <dc:date>2021-03-08T00:18:50Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724359#M9858</link>
      <description>&lt;P&gt;In general you should be able to do this without transposing the data, just process it as you proceed through the dataset.&amp;nbsp; But that might depend on on how complex the situation is.&amp;nbsp; It is a little hard to follow the logic of how you want to handle overlaps.&amp;nbsp; Can you clarify with simple examples?&amp;nbsp; Here are some questions and suggested approach.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;First do we care about the job type or code?&amp;nbsp; Do we want to calculate the duration periods for different job codes separately?&amp;nbsp; If not then what does it mean when two records for different job codes overlap?&amp;nbsp; Do we truncate the time in the earlier job to end when the new job starts?&amp;nbsp; Do we create a new job code to indicate there was a period of time with two (or more) jobs?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;First let's assume the data is sorted by ID, START, END.&amp;nbsp; (let's ignore the job code issue for now)&lt;/P&gt;
&lt;P&gt;Then let's try to enumerate the possible relationships between the current line and the previous one.&lt;/P&gt;
&lt;P&gt;1) No overlap at all.&lt;/P&gt;
&lt;P&gt;2) The END of the previous matches the START of the current.&lt;/P&gt;
&lt;P&gt;3) The END of the previous is between the START and END of the current.&lt;/P&gt;
&lt;P&gt;4) The END of the previous is on or after the END of the current. (The previous period contains the current period.)&lt;/P&gt;
&lt;P&gt;5) Some weird crossing of three or more overlapping records.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In general if you have two records where one stops and the other starts and you have no indication of when in the year the change happened you need to have a rule to handle that.&amp;nbsp; You could assume that it always happened in the middle of the year and give each period half of the overlapping year.&lt;/P&gt;
&lt;PRE&gt;ID START STOP DURATION
1  1975  1980   5.5
1  1980  1985   5.5
2  1975  1985   11&lt;/PRE&gt;
&lt;P&gt;If there is a longer overlap then truncate the earlier one at the point where the next one starts.&lt;/P&gt;
&lt;P&gt;So you should be able to calculate like this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;ID START STOP PREV NEXT DURATION
1  1975  1982    . 1980  5.5
1  1980  1985 1982    .  5.5
2  1975  1985    .    .  11&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;You can use LAG() to generate PREV value from STOP of the previous observation.&amp;nbsp; You can use any of a number of methods to simulate the non-existent LEAD() function to generate NEXT form the START of the next observation.&lt;/P&gt;</description>
      <pubDate>Mon, 08 Mar 2021 05:22:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724359#M9858</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2021-03-08T05:22:39Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724727#M9865</link>
      <description>Hello Tom,&lt;BR /&gt;Thanks again for your time. Please, I have provided a sample dataset, the objectives and the expected output.&lt;BR /&gt;Kindly check to see if you can help. What you suggested about trancation,etc,  sorry, I have no clue.&lt;BR /&gt;Thanks in advance.&lt;BR /&gt;ak.&lt;BR /&gt;Calculating duration for overlaps and non-overlaps without using macro?&lt;BR /&gt;Hello all,&lt;BR /&gt;I would like to calculate durations  (jobyrout-jobyrin) for overlap and non overlap years without using macro.&lt;BR /&gt;The macro didn’t work well with large datasets with long arrays; it worked good for  a sample (small) dataset, so &lt;BR /&gt;I am obliged to find another method that will achieve the same aim, even if the method is long, I would prefer that to macro. &lt;BR /&gt;I would appreciate if someone knows of any other method to achieve my aim. The dataset, my objectives and expected output  are given below.&lt;BR /&gt; I really need help; I have no clue, please.&lt;BR /&gt;&lt;BR /&gt;Thanks in advance for your help. &lt;BR /&gt;ak.&lt;BR /&gt;&lt;BR /&gt;/**Data set*/&lt;BR /&gt;data full_tdata;&lt;BR /&gt;input id$ 1-6 job 7-8 jobyrin 9-11 jobyrout 18-20  icode$ 23-27  lung$ 29-35;&lt;BR /&gt;datalines;&lt;BR /&gt;OSa13	3	73	      78	  6191	 cacase&lt;BR /&gt;OSa30	1	39	      46	  7181	 cacase&lt;BR /&gt;OSa30	3	56	      64	  6191	 cacase&lt;BR /&gt;OSa73	1	23	      31	  7181	 popcon&lt;BR /&gt;OSa73	2	31	      42	  5130	 popcon&lt;BR /&gt;OSf26	2	70	      70	  6191	 popcon&lt;BR /&gt;OSj17	3	60	      75	  6191	 cacase&lt;BR /&gt;OSj17	4	65	      70	  6191	 cacase&lt;BR /&gt;;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;1) No overlap at all  ie. .ids osa13 (duration=78-73=5) and osa30 (duration=46-39=7 for icode7181 and 64-56=8 for icode 6191). &lt;BR /&gt;2) The END of the previous matches the START of the current ie. id osa73 ; duration=31-23=8 for icode 7181 and 42-31=11 for icode 5130.&lt;BR /&gt;3) The START and END are the same  ie. osf26:  duration is automatically assigned 0.5 (70 to 70, not 0 but 0.5).&lt;BR /&gt;4) The START AND END of current is between START and END of previous. Eg. osj 17 jobs 3 and 4.; duration will be from 60 to 75 (ie. 75-60=15).&lt;BR /&gt;&lt;BR /&gt;Expected output:&lt;BR /&gt;Icode 6191=janitor:  if janitor(6191) is present (janitor_ever=1, otherwise janitor_ever=0)  ; janitor_dur is the duration (jobyrout-jobyrin);  icode 7181=baker, 5130=plumber.&lt;BR /&gt;id              janitor_dur    janitor_ever   baker_dur      baker_ever  plumber_dur   plumber_ever&lt;BR /&gt;osa13                   5                       1               0                           0                   0                     0               &lt;BR /&gt;osa30                   8                       1               7                           1                   0                     0&lt;BR /&gt;osa73                   0                       0               8                           1                  11                    1&lt;BR /&gt;osf26                   0.5                    1                0                           0                   0                      0&lt;BR /&gt;osj17                   15                     1                0                           0                   0                       0&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 09 Mar 2021 01:02:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724727#M9865</guid>
      <dc:creator>ak2011</dc:creator>
      <dc:date>2021-03-09T01:02:52Z</dc:date>
    </item>
    <item>
      <title>Re: Uexpected merged results from two macro datasets</title>
      <link>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724778#M9868</link>
      <description>Sorry, data jan; set small_data; is not right.&lt;BR /&gt;&lt;BR /&gt;Thank you.&lt;BR /&gt;ak.</description>
      <pubDate>Tue, 09 Mar 2021 08:43:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Studio/Uexpected-merged-results-from-two-macro-datasets/m-p/724778#M9868</guid>
      <dc:creator>ak2011</dc:creator>
      <dc:date>2021-03-09T08:43:26Z</dc:date>
    </item>
  </channel>
</rss>

