<?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: Outlier screen for automotive PAT(part average testing) in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/633047#M83146</link>
    <description>&lt;P&gt;Hi Ian,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sorry for late reply. Now I got JMP17 to run your script. No error as you mentioned. It show red/blue color respectively.&lt;/P&gt;&lt;P&gt;I try to change the sigma from 1 to 2,3,4,5,6 then the same error was found .&lt;/P&gt;&lt;P&gt;Any idea how to fix that?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 19 May 2023 03:12:18 GMT</pubDate>
    <dc:creator>Lichun</dc:creator>
    <dc:date>2023-05-19T03:12:18Z</dc:date>
    <item>
      <title>Outlier screen for automotive PAT(part average testing)</title>
      <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/630760#M82898</link>
      <description>&lt;P&gt;Hi Team,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am using the Robust Fit outlier - quartile, the result is for both high &amp;amp; low screen , mean +/- 6 K(Sigma).&lt;/P&gt;
&lt;P&gt;Now I am watching the leakage part only. I just need the outlier for mean + 6 K (Sigma).&lt;/P&gt;
&lt;P&gt;Please tell me how to make it happen from JSL. Thanks.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Explore Outliers(
	Y(
		:icc_aux10_total_vcc_1.000, :icc_aux10_VCCAUX10_vcc_1.000, :icc_aux18_total_vcc_1.000,
		:icc_aux18_VCCAUX18_vcc_1.000, :icc_core_total_vcc_1.050, :icc_core_VCC_vcc_1.050,
		:icc_core_lp_total_vcc_1.000, :icc_core_lp_VCC_vcc_1.000, :iccio_b_total_vcc_1.000,
		:iccio_b_VCCIOB_vcc_1.000, :iccio_ltr_total_vcc_1.000, :iccio_ltr_VCCIOLTR_vcc_1.000
	),
	Robust Fit Outliers( K Sigma( 6 ), Huber( 0 ), Quartile( 1 ) ),
	SendToReport( Dispatch( {}, "Commands", OutlineBox, {Close( 0 )} ) )
);&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 11 May 2023 07:01:30 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/630760#M82898</guid>
      <dc:creator>Lichun</dc:creator>
      <dc:date>2023-05-11T07:01:30Z</dc:date>
    </item>
    <item>
      <title>Re: Outlier screen for automotive PAT(part average testing)</title>
      <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/631787#M83013</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Follow my last post, i am using the robust fit outlier- default function is to screen high/low outlier, mean+/-6 sigma.&lt;/P&gt;&lt;P&gt;For some of itmes, that we only need to screen the outlier out of mean+6 sigma (like leakage item, low is good).&lt;/P&gt;&lt;P&gt;Can anyone tell me how to use the robust fit outlier for mean + 6 sigma only?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 May 2023 09:01:17 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/631787#M83013</guid>
      <dc:creator>Lichun</dc:creator>
      <dc:date>2023-05-15T09:01:17Z</dc:date>
    </item>
    <item>
      <title>Re: Outlier screen for automotive PAT(part average testing)</title>
      <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/631841#M83023</link>
      <description>&lt;P&gt;I ended up manipulating expressions. If there is not a better way, you should be able to adapt this approach:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;NamesDefaultToHere(1);

// Sample data
dt = Open("$SAMPLE_DATA/Big Class.jmp");

// Explore outliers
eo = dt &amp;lt;&amp;lt; Explore Outliers(Y( :height ));
eo &amp;lt;&amp;lt;  Robust Fit Outliers( K Sigma( 1 ), Huber( 0 ), Quartile( 1 ) );
eo &amp;lt;&amp;lt; obj &amp;lt;&amp;lt; Color Cells( :height );		// Blue (red) cells are 'low' ('high')

// Get the row numbers of the red cells . . .

// (1) Get the column script
colScript = :height &amp;lt;&amp;lt; getScript;
// (2) Find the 'Color Cells' expression in the column script
n = 1;
While(Head(Arg(colScript, n)) != Expr(Color Cells), n++);
cs = Arg(colScript, n);
// (3) Find the row numbwrs of the red cells (red is '35')
n = 1;
While((Arg(cs, 1)[n])[1] != 35, n++);
redRowList = (Arg(cs, 1)[n])[2];

Print(redRowList);&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 15 May 2023 12:49:50 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/631841#M83023</guid>
      <dc:creator>ian_jmp</dc:creator>
      <dc:date>2023-05-15T12:49:50Z</dc:date>
    </item>
    <item>
      <title>Re: Outlier screen for automotive PAT(part average testing)</title>
      <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/632077#M83046</link>
      <description>&lt;P&gt;Hi Ian,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your reply.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Robust Fit outlier is for both direction, below formula is to mark red for row out of +1 sigma or -1 sigma .&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; I would like to mark the row with +1 sigma only.&lt;/P&gt;&lt;PRE class="language-jsl"&gt;&lt;CODE&gt;eo &amp;lt;&amp;lt;  Robust Fit Outliers( K Sigma( 1 ), Huber( 0 ), Quartile( 1 ) );&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2. For your help to print the&amp;nbsp; collist, this is really I am looking for.&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; the error I received was object not subscriptable in access or evaluation of 'Arg (cs,1) [n]/*###*/1]', Arg(cs,1)[n]/*###*/1]'&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; Can you please review it again? thanks.&lt;/P&gt;</description>
      <pubDate>Tue, 16 May 2023 04:15:13 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/632077#M83046</guid>
      <dc:creator>Lichun</dc:creator>
      <dc:date>2023-05-16T04:15:13Z</dc:date>
    </item>
    <item>
      <title>Re: Outlier screen for automotive PAT(part average testing)</title>
      <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/632268#M83070</link>
      <description>&lt;P&gt;Using the red and blue colouring is just an indirect way of getting round the fact that (as far as I know), there is no direct way to ask JMP to do one-sided screening (on the high or low side, as required).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For me (using JMP 17.1 on a Mac), the code posted above does not generate an error. It prints:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="p1"&gt;{25, 27, 30, 37, 39, 40}&lt;/P&gt;
&lt;P class="p1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="p1"&gt;to the log, and this is a list of the row numbers containing outliers on the high side (the red cells in the table).&lt;/P&gt;
&lt;P class="p1"&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 16 May 2023 14:08:54 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/632268#M83070</guid>
      <dc:creator>ian_jmp</dc:creator>
      <dc:date>2023-05-16T14:08:54Z</dc:date>
    </item>
    <item>
      <title>Re: Outlier screen for automotive PAT(part average testing)</title>
      <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/633047#M83146</link>
      <description>&lt;P&gt;Hi Ian,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sorry for late reply. Now I got JMP17 to run your script. No error as you mentioned. It show red/blue color respectively.&lt;/P&gt;&lt;P&gt;I try to change the sigma from 1 to 2,3,4,5,6 then the same error was found .&lt;/P&gt;&lt;P&gt;Any idea how to fix that?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 03:12:18 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/633047#M83146</guid>
      <dc:creator>Lichun</dc:creator>
      <dc:date>2023-05-19T03:12:18Z</dc:date>
    </item>
    <item>
      <title>Re: Outlier screen for automotive PAT(part average testing)</title>
      <link>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/633331#M83169</link>
      <description>&lt;P&gt;Above I was careful to say 'adapt this approach' :). Without speaking for others, when posting JSL snippets my intention is (usually) to encourage someone to figure out the code and then be able to go further for themselves.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you change sigma to 2, you will have seen that there are only blue cells in the table (outliers on the low side), and the code isn't general enough to handle this and generates the error you saw.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please find a more complete (untested . . . ) script that should cover all situations:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;NamesDefaultToHere(1);

// Sample data
dt = Open("$SAMPLE_DATA/Big Class.jmp");

// Explore outliers
eo = dt &amp;lt;&amp;lt; Explore Outliers(Y( :height ));
eo &amp;lt;&amp;lt;  Robust Fit Outliers( K Sigma( 2 ), Huber( 0 ), Quartile( 1 ) );
eo &amp;lt;&amp;lt; obj &amp;lt;&amp;lt; Color Cells( :height );										// Blue (red) cells are 'low' ('high')

// Get the column script
colScript = :height &amp;lt;&amp;lt; getScript;

// Initialise lists (which may or may not be updated by the subsequent code)
redRowList = {};
blueRowList = {};

// Find the location of the sub-expression 'Color Cells'. if there are no outliers, 'colorCellsExist' will be 0
subExpr = {};
for(i=1, i&amp;lt;=NArg(colScript), i++, InsertInto(subExpr, Head(Arg(colScript, i))));
colorCellsExist = Contains(subExpr, Expr(Color Cells));

// Find the row numbwrs of any high (red) cells or low (blue) cells (red is '35', blue is '37'):
// Need to handle situations in which there are only high outliers, only low outliers, both high and low
// outliers, or no outliers
if(
	colorCellsExist,
		// Get the 'Color Cells' expression in the column script
		cs = Arg(colScript, colorCellsExist);
		if(
			// If 'cs' is a list of lists, we have both high and low outliers . . .
			IsList(Arg(cs, 1)[1]),
					for(i=1, i&amp;lt;=NItems(Arg(cs, 1)), i++,
						if(
							(Arg(cs, 1)[i])[1] == 35, redRowList = (Arg(cs, 1)[i])[2];
							(Arg(cs, 1)[i])[1] == 37, blueRowList = (Arg(cs, 1)[i])[2];
							);
						);
			,
			// . . . or if 'cs' is not a list of lists, we have either high or low outliers (but not both)
			if(
				Arg(cs, 1)[1] == 35, redRowList = Arg(cs, 1)[2],
				Arg(cs, 1)[1] == 37, blueRowList = Arg(cs, 1)[2]
				);
			);
	);

Print("High: "||Char(redRowList)||"   Low: "||Char(blueRowList));
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 19 May 2023 14:09:56 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Outlier-screen-for-automotive-PAT-part-average-testing/m-p/633331#M83169</guid>
      <dc:creator>ian_jmp</dc:creator>
      <dc:date>2023-05-19T14:09:56Z</dc:date>
    </item>
  </channel>
</rss>

