<?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: SQL observation summary question in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651654#M195542</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/331278"&gt;@rajd1&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is a way to achieve this.&lt;/P&gt;
&lt;P&gt;Could you please clarify the rule to compute delay and reduction?&lt;/P&gt;
&lt;P&gt;In the following program, I have set reduction and delay to "yes" if there was at least one record equal to "yes", and "none" in other cases.&lt;/P&gt;
&lt;P&gt;However, I can see that there is a value "Other" for patient 2 at cycle 3. How would you like to handle this case?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best,&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
	select distinct ID, DrugName, MaxCycle, MinCycle, countdose, Avgdose, max(FirstDose) as FirstDose, max(LastDose) as LastDose, Delay, Reduction
	from (select ID, DrugName,
		   max(cycle) as MaxCycle,
		   min(cycle) as MinCycle,
		   count(dose) as countdose,
		   mean(dose) as Avgdose format=8.1,
		   dose*(cycle=calculated MinCycle) as FirstDose,
		   dose*(cycle=calculated MaxCycle) as LastDose,
		   case when sum(lowcase(delay)="yes") &amp;gt; 1 then "yes" else "none" end as Delay,
		   case when sum(lowcase(reduction)="yes") &amp;gt; 1 then "yes" else "none" end as Reduction /*what if "Other" ?*/
	 	 from L_line1
		 group by ID, DrugName)
	group by ID, DrugName	
	order by ID, DrugName;
quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture d’écran 2020-05-29 à 09.58.53.png" style="width: 999px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/40136i9F1C6EF03E7AE3F7/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture d’écran 2020-05-29 à 09.58.53.png" alt="Capture d’écran 2020-05-29 à 09.58.53.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 29 May 2020 08:02:27 GMT</pubDate>
    <dc:creator>ed_sas_member</dc:creator>
    <dc:date>2020-05-29T08:02:27Z</dc:date>
    <item>
      <title>SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651619#M195526</link>
      <description>&lt;P&gt;Hello there,&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have been trying to work on this problem with data manipulation using SQL. Here is my program and my data set:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;Cycle&lt;/TD&gt;&lt;TD&gt;Delay&lt;/TD&gt;&lt;TD&gt;Reduction&lt;/TD&gt;&lt;TD&gt;DrugName&lt;/TD&gt;&lt;TD&gt;Regimen&lt;/TD&gt;&lt;TD&gt;Dose&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Carb&lt;/TD&gt;&lt;TD&gt;x,y&lt;/TD&gt;&lt;TD&gt;750&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;Pem&lt;/TD&gt;&lt;TD&gt;x,y&lt;/TD&gt;&lt;TD&gt;1015&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Pem&lt;/TD&gt;&lt;TD&gt;x,y&lt;/TD&gt;&lt;TD&gt;1015&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Carb&lt;/TD&gt;&lt;TD&gt;x,y&lt;/TD&gt;&lt;TD&gt;705&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;940&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;940&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;930&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;910&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;910&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;910&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;940&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;945&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;920&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;915&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;11&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;915&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;TD&gt;Unknown&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;920&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;13&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;920&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;920&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;925&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;16&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;910&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;17&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;890&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;18&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;875&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;19&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;870&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;850&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;21&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;850&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;22&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;845&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;23&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;860&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;24&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;855&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Pacl&lt;/TD&gt;&lt;TD&gt;x,z&lt;/TD&gt;&lt;TD&gt;95&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Carb&lt;/TD&gt;&lt;TD&gt;x,z&lt;/TD&gt;&lt;TD&gt;245&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Pacl&lt;/TD&gt;&lt;TD&gt;x,z&lt;/TD&gt;&lt;TD&gt;95&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Carb&lt;/TD&gt;&lt;TD&gt;x,z&lt;/TD&gt;&lt;TD&gt;225&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Pacl&lt;/TD&gt;&lt;TD&gt;x,z&lt;/TD&gt;&lt;TD&gt;95&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;None&lt;/TD&gt;&lt;TD&gt;Other&lt;/TD&gt;&lt;TD&gt;Carb&lt;/TD&gt;&lt;TD&gt;x,z&lt;/TD&gt;&lt;TD&gt;225&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is my program:&lt;/P&gt;&lt;P&gt;Proc sql;&lt;BR /&gt;Create table Drug_Clean AS&lt;BR /&gt;select distinct (DrugName),&lt;BR /&gt;ID as ID,&amp;nbsp;max(cycle) as maxcycle,&amp;nbsp;min(cycle) as mincycle,&amp;nbsp;Count(Dose) as numberdoses,&amp;nbsp;First(dose) as Firstdose,&amp;nbsp;mean(Dose) as MeanDose,&amp;nbsp;last(Dose) as LastDose&lt;BR /&gt;from L_line1&lt;BR /&gt;Group by SubjectID;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the final dataset that i would like to have the following:&lt;/P&gt;&lt;P&gt;It should have all the drugnames listed by id: For exampl ID #1 has carb, pem and durv. I want to display as follows:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;Drug&lt;/TD&gt;&lt;TD&gt;MaxCycle&lt;/TD&gt;&lt;TD&gt;MinCycle&lt;/TD&gt;&lt;TD&gt;countdose&lt;/TD&gt;&lt;TD&gt;Avgdose&lt;/TD&gt;&lt;TD&gt;FirstDose&lt;/TD&gt;&lt;TD&gt;LastDose&lt;/TD&gt;&lt;TD&gt;Reduction&lt;/TD&gt;&lt;TD&gt;Delay&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;Durv&lt;/TD&gt;&lt;TD&gt;24&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;24&lt;/TD&gt;&lt;TD&gt;902.7&lt;/TD&gt;&lt;TD&gt;940&lt;/TD&gt;&lt;TD&gt;855&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help is greatly appreciated!!!&lt;/P&gt;</description>
      <pubDate>Fri, 29 May 2020 04:02:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651619#M195526</guid>
      <dc:creator>rajd1</dc:creator>
      <dc:date>2020-05-29T04:02:23Z</dc:date>
    </item>
    <item>
      <title>Re: SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651621#M195528</link>
      <description>&lt;P&gt;Why is there no &lt;EM&gt;Carb&lt;/EM&gt; in the output?&lt;/P&gt;</description>
      <pubDate>Fri, 29 May 2020 03:54:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651621#M195528</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2020-05-29T03:54:20Z</dc:date>
    </item>
    <item>
      <title>Re: SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651623#M195530</link>
      <description>&lt;P&gt;Sorry, Yes I want it to display all the carb and pem as well. Basically all the drugnames by ID.&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Fri, 29 May 2020 03:59:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651623#M195530</guid>
      <dc:creator>rajd1</dc:creator>
      <dc:date>2020-05-29T03:59:59Z</dc:date>
    </item>
    <item>
      <title>Re: SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651625#M195532</link>
      <description>&lt;P&gt;Like this?&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
  create table WANT as
  select unique ID
         , DRUGNAME
         , MAXCYCLE
         , MINCYCLE
         , NUMBERDOSES
         , MEANDOSE   
         , max(FD) as FIRSTDOSE
         , max(LD) as LASTDOSE
  from (
    select unique ID
         , DRUGNAME
         , max (CYCLE) as MAXCYCLE
         , min (CYCLE) as MINCYCLE
         , count(DOSE) as NUMBERDOSES
         , mean(DOSE)  as MEANDOSE
         , DOSE*(CYCLE=calculated MINCYCLE) as FD
         , DOSE*(CYCLE=calculated MAXCYCLE) as LD
    from HAVE
    group by ID, DRUGNAME
  )
  group by ID, DRUGNAME
  order by ID, DRUGNAME
  ;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 29 May 2020 04:34:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651625#M195532</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2020-05-29T04:34:12Z</dc:date>
    </item>
    <item>
      <title>Re: SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651654#M195542</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/331278"&gt;@rajd1&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is a way to achieve this.&lt;/P&gt;
&lt;P&gt;Could you please clarify the rule to compute delay and reduction?&lt;/P&gt;
&lt;P&gt;In the following program, I have set reduction and delay to "yes" if there was at least one record equal to "yes", and "none" in other cases.&lt;/P&gt;
&lt;P&gt;However, I can see that there is a value "Other" for patient 2 at cycle 3. How would you like to handle this case?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best,&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
	select distinct ID, DrugName, MaxCycle, MinCycle, countdose, Avgdose, max(FirstDose) as FirstDose, max(LastDose) as LastDose, Delay, Reduction
	from (select ID, DrugName,
		   max(cycle) as MaxCycle,
		   min(cycle) as MinCycle,
		   count(dose) as countdose,
		   mean(dose) as Avgdose format=8.1,
		   dose*(cycle=calculated MinCycle) as FirstDose,
		   dose*(cycle=calculated MaxCycle) as LastDose,
		   case when sum(lowcase(delay)="yes") &amp;gt; 1 then "yes" else "none" end as Delay,
		   case when sum(lowcase(reduction)="yes") &amp;gt; 1 then "yes" else "none" end as Reduction /*what if "Other" ?*/
	 	 from L_line1
		 group by ID, DrugName)
	group by ID, DrugName	
	order by ID, DrugName;
quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture d’écran 2020-05-29 à 09.58.53.png" style="width: 999px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/40136i9F1C6EF03E7AE3F7/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture d’écran 2020-05-29 à 09.58.53.png" alt="Capture d’écran 2020-05-29 à 09.58.53.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 29 May 2020 08:02:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651654#M195542</guid>
      <dc:creator>ed_sas_member</dc:creator>
      <dc:date>2020-05-29T08:02:27Z</dc:date>
    </item>
    <item>
      <title>Re: SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651877#M195618</link>
      <description>&lt;P&gt;This worked GREAT! The delay variable has 3 categories: none, yes, and unknown. I would like to make these as categories for the delay variable as well.&amp;nbsp;&lt;/P&gt;&lt;P&gt;basically i want to be able to add the 3rd category to the delay variable.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Further i have some dates and was&amp;nbsp;trying to find the difference between dates.&lt;/P&gt;&lt;P&gt;i was working with and here is the code:&lt;/P&gt;&lt;P&gt;proc sql;&lt;BR /&gt;create table clean_Drug as&lt;BR /&gt;select unique SubjectID&lt;BR /&gt;, DRUGNAME&lt;BR /&gt;, REGIMEN&lt;BR /&gt;, STARTCYCLE&lt;BR /&gt;, ENDCYCLE&lt;BR /&gt;, CYCLEDAYS&lt;BR /&gt;, STARTLOT&lt;BR /&gt;, ENDLOT&lt;BR /&gt;, MAXCYCLE&lt;BR /&gt;, MINCYCLE&lt;BR /&gt;, AVGCYCLE&lt;BR /&gt;, MEDIANCYCLE&lt;BR /&gt;, NUMBERDOSES&lt;BR /&gt;, MEANDOSE&lt;BR /&gt;, max(FIRSTDOSE) as FIRSTDOSE&lt;BR /&gt;, max(LASTDOSE) as LASTDOSE&lt;BR /&gt;from (&lt;BR /&gt;select unique SubjectID&lt;BR /&gt;, DRUGNAME&lt;BR /&gt;, REGIMEN&lt;BR /&gt;, min (LotStart) as STARTLOT format MMDDYY10.&lt;BR /&gt;, max (LotEnd) as ENDLOT format MMDDYY10.&lt;BR /&gt;, min (AdminDate) as STARTCYCLE format MMDDYY10.&lt;BR /&gt;, max (AdminDate) as ENDCYCLE format MMDDYY10.&lt;BR /&gt;, max (CYCLE) as MAXCYCLE&lt;BR /&gt;, sum (ENDCYCLE,-STARTCYCLE) as CYCLEDAYS&lt;BR /&gt;, min (CYCLE) as MINCYCLE&lt;BR /&gt;, mean (CYCLE) as AVGCYCLE&lt;BR /&gt;, median(CYCLE) as MEDIANCYCLE&lt;BR /&gt;, count(DOSE) as NUMBERDOSES&lt;BR /&gt;, mean(DOSE) as MEANDOSE&lt;BR /&gt;, DOSE*(CYCLE=calculated MINCYCLE) as FIRSTDOSE&lt;BR /&gt;, DOSE*(CYCLE=calculated MAXCYCLE) as LASTDOSE&lt;BR /&gt;from L_Line1&lt;BR /&gt;group by SubjectID, DRUGNAME)&lt;BR /&gt;group by SubjectID, DRUGNAME&lt;BR /&gt;order by SubjectID, DRUGNAME&lt;BR /&gt;;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;I got the following error:&lt;/P&gt;&lt;P&gt;ERROR: Function SUM requires a numeric expression as argument 1.&lt;BR /&gt;ERROR: The following columns were not found in the contributing tables: ENDCYCLE, STARTCYCLE.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks so much!&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 29 May 2020 21:10:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651877#M195618</guid>
      <dc:creator>rajd1</dc:creator>
      <dc:date>2020-05-29T21:10:57Z</dc:date>
    </item>
    <item>
      <title>Re: SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651879#M195620</link>
      <description>This worked GREAT! Thanks so much!&lt;BR /&gt;Quick question: say i wanted to have one row for each ID and have drug and cycle listed as variables like Drug1, Drug2, and so on. How can i modify this code? I tried a few things and it didn't work. I am soon realizing the power of SQL. This is a great community and i have been using this everyday to learn:)</description>
      <pubDate>Fri, 29 May 2020 20:48:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651879#M195620</guid>
      <dc:creator>rajd1</dc:creator>
      <dc:date>2020-05-29T20:48:27Z</dc:date>
    </item>
    <item>
      <title>Re: SQL observation summary question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651895#M195628</link>
      <description>SQL is not very suited to the first task (first and last row), and even less suited to what you want now (create an unknown number of columns). 
1. These 2 tasks are best performed in a data step
2.  The structure you are requesting is ill-suited to any kind of processing. It's much better to keep the data vertical.</description>
      <pubDate>Fri, 29 May 2020 23:58:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-observation-summary-question/m-p/651895#M195628</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2020-05-29T23:58:51Z</dc:date>
    </item>
  </channel>
</rss>

