<?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: trimmed mean in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383468#M91463</link>
    <description>&lt;P&gt;It's not clear what "trim" your data means.&amp;nbsp; You can't get rid of variables, because G1 might contain the largest value on one observation, but a middling value on another observation.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;GIven what you wrote so far, you could conceivably use:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;trimmed_total = total - ( max(of g1-g13) + min(of g1-g13) ) ;&lt;/P&gt;</description>
    <pubDate>Thu, 27 Jul 2017 19:48:38 GMT</pubDate>
    <dc:creator>Astounding</dc:creator>
    <dc:date>2017-07-27T19:48:38Z</dc:date>
    <item>
      <title>trimmed mean</title>
      <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/382336#M91437</link>
      <description>&lt;P&gt;Hello expert&lt;/P&gt;&lt;P&gt;I want to trim my data by eliminate highest and lowest (G1-G13) for each observation from my data set .&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;data grades;&lt;BR /&gt;infile '/folders/myshortcuts/SASUniversityEdition/module 7/grades.txt';&lt;BR /&gt;input id 4. @6 G1 1. G2 1. G3 1. &lt;BR /&gt;G4 1. G5 1. G6 1. G7 1. G8 1. &lt;BR /&gt;G9 1. G10 1. G11 1. G12 1. G13 1.&lt;BR /&gt;;&lt;BR /&gt;total = G1+G2+G3+G4+G5+G6+G7&lt;BR /&gt;+G8+G9+G10+G11+G12+G13;&lt;BR /&gt;proc&lt;BR /&gt;print&lt;BR /&gt;data = grades;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;here is my output&lt;/P&gt;&lt;P&gt;Obs id G1 G2 G3 G4 G5 G6 G7 G8 G9 G10 G11 G12 G13 total 1 2 3&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;1105&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;91&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1294&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;90&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2009&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;75&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;DIV class="dijitContentPane dijitBorderContainer-child dijitBorderContainer-dijitContentPane dijitBorderContainerPane dijitAlignCenter dijitContentPaneSingleChild"&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Thu, 27 Jul 2017 17:00:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/382336#M91437</guid>
      <dc:creator>Koke</dc:creator>
      <dc:date>2017-07-27T17:00:53Z</dc:date>
    </item>
    <item>
      <title>Re: trimmed mean</title>
      <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/382390#M91439</link>
      <description>&lt;P&gt;What do you want as output?&lt;/P&gt;</description>
      <pubDate>Thu, 27 Jul 2017 17:05:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/382390#M91439</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-07-27T17:05:25Z</dc:date>
    </item>
    <item>
      <title>Re: trimmed mean</title>
      <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383424#M91452</link>
      <description>&lt;P&gt;I think you have an unfortunate nonnormalized data structure that makes the task harder.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If I take&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data grades;
   input id grade1 grade2 grade3 grade4;
datalines;
1105 1 2 3 4
1106 2 2 2 2
1107 3 3 4 6
;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;and flip it to a normalized structure like&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
    create table grades_normalized as 
    select id as id, 'assignment1' as assignment, grade1 as grade
    from grades
    union
    select id, 'assignment2', grade2
    from grades
    union
    select id, 'assignment3', grade3
    from grades
    union
    select id, 'assignment4', grade4
    from grades;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I get a table that looks like&lt;/P&gt;
&lt;PRE&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Obs&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; grade&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1105&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 1105&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1105&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1105&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1106&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1106&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1106&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1106&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1107&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; 1107&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11&amp;nbsp;&amp;nbsp;&amp;nbsp; 1107&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp; 1107&amp;nbsp;&amp;nbsp;&amp;nbsp; assignment4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&lt;BR /&gt;&amp;#12;&lt;BR /&gt;
&lt;/PRE&gt;
&lt;P&gt;With that structure, I can sort (not needed for this data, but you never know) and trim.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sort data= grades_normalized;
 	by id grade;
run;

data trimmed_grades;
	set grades_normalized;
	by id;
	if first.id then delete;
	if last.id then delete;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;then summarize&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
	create table grade_report as 
	select id as id, sum(grade) as grade_total
	from trimmed_grades
	group by id
	order by id;
quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;and end up with&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;                             &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; grade_&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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; Obs&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; total&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1105&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1106&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1107&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&lt;/PRE&gt;
&lt;P&gt;Now one of the experts around here will post a solution that does this all in the data step or with a macro or something but they haven't replied so you are stuck with me.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;EDIT:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Did I not say somebody better than me would come along and do it in the data step?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data grades;
input id 4. g1-g13;
datalines;
1105 8 7 5 8 3 7 7 8 8 8 8 8 6 
1294 8 8 8 7 5 7 8 8 8 8 5 8 2 
2009 8 6 3 8 4 6 7 7 8 7 0 4 7 
;
run;

data want;
   set grades;
   total = sum( of g1-g13);
   trim_total = total - max(of g1-g13) - min(of g1-g13);
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 27 Jul 2017 20:51:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383424#M91452</guid>
      <dc:creator>HB</dc:creator>
      <dc:date>2017-07-27T20:51:47Z</dc:date>
    </item>
    <item>
      <title>Re: trimmed mean</title>
      <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383465#M91461</link>
      <description>&lt;P&gt;It really isn't obvious what your desired output is.&lt;/P&gt;
&lt;P&gt;If the resulting order of the G variables is not critical here's a possible start;&lt;/P&gt;
&lt;PRE&gt;data grades;
input id 4. g1-g13;
datalines;
1105 8 7 5 8 3 7 7 8 8 8 8 8 6 91 
1294 8 8 8 7 5 7 8 8 8 8 5 8 2 90 
2009 8 6 3 8 4 6 7 7 8 7 0 4 7 75 
;
run;

data want;
   set grades;
   array g g1-g13;
   call sortn(of g(*));
   total = sum( of g2-g12);
run;
&lt;/PRE&gt;
&lt;P&gt;Note that I have posted a way to duplicate your data (at least your example output) since we do not have your file. Note that your data step as written may yield surprising results if your data contains values like 10 or 100.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The second data step, which could actually be done in the step that reads the data, sorts the values of G1 - G13.&lt;/P&gt;
&lt;P&gt;If you want a trimmed total that is what I show. If you want to actually remove the the largest and smallest values the you could drop the variables G1 and G13.&lt;/P&gt;
&lt;P&gt;However this approach may only work if all of G1 to G13 exist.&lt;/P&gt;</description>
      <pubDate>Thu, 27 Jul 2017 19:41:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383465#M91461</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2017-07-27T19:41:50Z</dc:date>
    </item>
    <item>
      <title>Re: trimmed mean</title>
      <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383466#M91462</link>
      <description>&lt;P&gt;And how do you want to handle ties? If there are 4 8's are you removing all?&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;I would use LARGEST/SMALLEST to remove the values not needed but without what you want as output and what you have as input we can't really connect all the dots yet.&lt;/P&gt;</description>
      <pubDate>Thu, 27 Jul 2017 19:48:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383466#M91462</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-07-27T19:48:28Z</dc:date>
    </item>
    <item>
      <title>Re: trimmed mean</title>
      <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383468#M91463</link>
      <description>&lt;P&gt;It's not clear what "trim" your data means.&amp;nbsp; You can't get rid of variables, because G1 might contain the largest value on one observation, but a middling value on another observation.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;GIven what you wrote so far, you could conceivably use:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;trimmed_total = total - ( max(of g1-g13) + min(of g1-g13) ) ;&lt;/P&gt;</description>
      <pubDate>Thu, 27 Jul 2017 19:48:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383468#M91463</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2017-07-27T19:48:38Z</dc:date>
    </item>
    <item>
      <title>Re: trimmed mean</title>
      <link>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383516#M91469</link>
      <description>&lt;P&gt;Simpler to read the data differently perhaps to get the normalized structure:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;data grades;
   input id 4. @ ;
   do assignment=1 to 13;
      input grade @;
      output;
   end;
   input;
datalines;
1105 8 7 5 8 3 7 7 8 8 8 8 8 6 91 
1294 8 8 8 7 5 7 8 8 8 8 5 8 2 90 
2009 8 6 3 8 4 6 7 7 8 7 0 4 7 75 
;
run;&lt;/PRE&gt;
&lt;P&gt;which ignores the "total" in the example data provided by OP.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 27 Jul 2017 22:38:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/trimmed-mean/m-p/383516#M91469</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2017-07-27T22:38:57Z</dc:date>
    </item>
  </channel>
</rss>

