<?xml version="1.0"?>
<OriginStorage Label="friedman" Display="652" FileName="D:\Origin85\X-FUNCTIONS\Statistics\Nonparametric Tests\friedman.OXF"><XFname NodeID="11" Label="Name" DataID="300">friedman</XFname><xFdescription NodeID="11" Label="Description" DataID="310">&amp;Friedman ANOVA:Perform a Friedman ANOVA</xFdescription><attachTo NodeID="13" Label="Attach to Origin Object" Combo="None|Auto|Column|Sheet/Layer|Book/Graph" DataID="320" Show="0">1</attachTo><author NodeID="11" Label="Author" DataID="314"></author><AutoDependent NodeID="10" Label="Auto Compile Dependent Files" DataID="451">1</AutoDependent><UsageCtxt NodeID="268435456" Label="Usage Context" DataID="329"><LabTalk NodeID="10" Label="Labtalk" DataID="357">1.</LabTalk><WksSel NodeID="10" Label="Worksheet Selection" DataID="350">0.</WksSel><GrObj NodeID="268435456" Label="Graphic Object Events" DataID="330" Use="0"><InitAnchors NodeID="10" Label="Initialization" DataID="339">1.</InitAnchors><Move NodeID="10" Label="Move" DataID="331">1.</Move><Moving NodeID="10" Label="Moving" DataID="332">0.</Moving><Resize NodeID="10" Label="Resize" DataID="333">0.</Resize><Resizing NodeID="10" Label="Resizing" DataID="334">0.</Resizing><Delete NodeID="10" Label="Delete" DataID="335">0.</Delete><Select NodeID="10" Label="Select" DataID="336">0.</Select><Unselect NodeID="10" Label="Unselect" DataID="337">0.</Unselect><BtnClick NodeID="10" Label="Button Click" DataID="338">0.</BtnClick><Rotate NodeID="10" Label="Rotate" DataID="340">0.</Rotate><Rotating NodeID="10" Label="Rotating" DataID="341">0.</Rotating><Skew NodeID="10" Label="Skew" DataID="342">0.</Skew><Skewing NodeID="10" Label="Skewing" DataID="343">0.</Skewing><EditEv NodeID="10" Label="Edit" DataID="344">0.</EditEv><Editing NodeID="10" Label="Editing" DataID="345">0.</Editing><NewSelection NodeID="10" Label="New Selection" DataID="346">0.</NewSelection><DeletePart NodeID="10" Label="Delete Part" DataID="347">0.</DeletePart><Keyboard NodeID="10" Label="Keyboard" DataID="348">0.</Keyboard><ObjType NodeID="13" Label="Type" Combo="Rect|Line" DataID="349">0.</ObjType></GrObj><Theme NodeID="268435456" Label="Theme" DataID="386"><UseInDialog NodeID="10" Label="Support Saving Themes in Dialog" DataID="372">1.</UseInDialog><ShowInMenu NodeID="10" Label="Show Themes as Popups in Menu" DataID="352">1.</ShowInMenu><SaveInBook NodeID="10" Label="Support Saving to Book" DataID="387">0.</SaveInBook><SaveInSheet NodeID="10" Label="Support Saving to Sheet" DataID="388">0.</SaveInSheet></Theme><mainmenu NodeID="268435456" Label="Menus" DataID="365" Use="1" BranchCombo="None|Main Menus|Context Menus|Both|Context Menus 1|Context Menus 2|Context Menus 3|Context Menus 4"><AddAsTool NodeID="10" Label="Add As Tool" DataID="366">0.</AddAsTool><ClassOp NodeID="10" Label="Class Operation" DataID="367">0.</ClassOp><GetN NodeID="13" Label="Auto GetN Dialog" Combo="None|Simple GetNBox|GetNGraphBox with Preview|GetNImageBox|Wizard|Custom" DataID="371">1.</GetN><CustomDialog NodeID="11" Label="Custom Dialog Function" DataID="395" Show="0"></CustomDialog><DlgFromMenu NodeID="10" Label="Open Dialog from Menu for Option Index" DataID="374">1.</DlgFromMenu><checkMenu NodeID="10" Label="Check Menu" DataID="470">0.</checkMenu></mainmenu><windows NodeID="268435456" Label="Windows" DataID="450" Use="1"><graph NodeID="10" Label="Graph" DataID="368">0.</graph><worksheet NodeID="10" Label="Worksheet" DataID="369">1</worksheet><matrix NodeID="10" Label="Matrix" DataID="370">0.</matrix><report NodeID="10" Label="Report" DataID="360">0.</report><none NodeID="10" Label="Layout" DataID="359">0.</none><none NodeID="10" Label="None" DataID="361">0.</none></windows></UsageCtxt><outTree NodeID="10" Label="Generate LabTalk Tree upon execution" DataID="373">1.</outTree><askOutResultsLog NodeID="10" Label="Add Checkbox to Auto GetN Dialog about Results Log Output" DataID="393">1</askOutResultsLog><outResultsLog NodeID="13" Label="Output to Results Log upon execution" Combo="None|All|Report Tree|First Input|First Output|All Outputs|All Except Trees" DataID="394">2</outResultsLog><customButtons NodeID="11" Label="GetN Dialog Custom Buttons" DataID="391"></customButtons><syntax NodeID="41" Label="Command Line Usage" DataID="305" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="2-18">friedman irng:=(col(a),col(b),col(c))
friedman irng:=(col(a),col(b),col(c)) rt:=&lt;new: Friedman&gt;</syntax><vars NodeID="268435456" Label="Variables" Branch="1"><v1 _XFUNCTION_VAR="1" RepeatID="1"><name NodeID="11" Label="Name" DataID="10">irng</name><description NodeID="11" Label="Label" DataID="20" Show="0"></description><io NodeID="13" Label="Input/Output" Combo="Input|Output|Input/Output" DataID="30">0</io><type NodeID="11" Label="Data Type" Combo="double|string|int|vector|vector&lt;string&gt;|vector&lt;complex&gt;|Range|XYRange|XYRangeComplex|XYZRange|matrix|ButtonInfo|LineInfo|TextInfo|EventInfo|MarkerInfo|RectInfo|Column|MatrixObject|Image|DataPlot|Page|GraphPage|WorksheetPage|MatrixPage|GraphLayer|Worksheet|MatrixLayer|TreeNode|FileLink|ReportTree|ReportData|GraphPageBase|Layer" DataID="40">Range</type><valdata NodeID="57" Label="Data" DataID="50">&lt;active&gt;</valdata><comboString NodeID="11" Label="Control" DataID="70">Data Range|Factor Range|Subject Range</comboString><context NodeID="268435456" Label="Context" DataID="71"></context><optionString NodeID="11" Label="Option String" DataID="69">D:XFS;I:0x00000010</optionString><suggestedValues NodeID="11" Label="Suggested Values" DataID="405"></suggestedValues><themeID NodeID="14" Label="Theme ID" DataID="35">0.</themeID><help NodeID="268435456" Label="English Help" DataID="410" RepeatID="256"><description NodeID="11" Label="Display Name" DataID="408"></description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8"><![CDATA[Input data range, including input data, factor and subject.
Example:
Friedman irng:=(1,2,3)
In the example, input data should be stored in 1st column, input factor values(treatments) should be stored in 2nd column and input subject values(blocks) should be stored in 3rd column
]]></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3"><![CDATA[Input data range
]]></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407"></comboDescription></help><helpj NodeID="268435456" Label="Japanese Help" DataID="410" RepeatID="512"><description NodeID="11" Label="Display Name" DataID="408" CdPg="932"></description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="932"><![CDATA[入力データ、因子、対象を含む入力データ範囲
例:
Friedman irng:=(1,2,3)
この例では、入力データを1列目に保存し、入力因子の値を2列目に保存し、対象の値を3列目に保存します。
]]></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="932"><![CDATA[入力データ範囲
]]></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="932"></comboDescription></helpj><helpg NodeID="268435456" Label="German Help" DataID="410" RepeatID="768"><description NodeID="11" Label="Display Name" DataID="408" CdPg="1252"></description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="1252"><![CDATA[Eingabedatenbereich, einschließlich Eingabedaten, -faktor und -subjekt.
Beispiel:
Friedman irng:=(1,2,3)
In diesem Beispiel sollten die Eingabedaten in der ersten Spalte gespeichert sein, die Eingabefaktorwerte (Behandlungen) in der zweiten Spalte und die Eingabesubjektwerte (Blöcke) in der dritten Spalte
]]></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="1252"><![CDATA[Datenbereich der Eingabe
]]></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="1252"></comboDescription></helpg><helpc NodeID="268435456" Label="Chinese Help" DataID="410" RepeatID="1024"><description NodeID="11" Label="Display Name" DataID="408" CdPg="936"></description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="936"></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="936"></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="936"></comboDescription></helpc></v1><v2 _XFUNCTION_VAR="1" RepeatID="3"><name NodeID="11" Label="Name" DataID="10">alpha</name><description NodeID="11" Label="Label" DataID="20" Show="0">Signifikanzniveau</description><io NodeID="13" Label="Input/Output" Combo="Input|Output|Input/Output" DataID="30">0.</io><type NodeID="11" Label="Data Type" Combo="double|string|int|vector|vector&lt;string&gt;|vector&lt;complex&gt;|Range|XYRange|XYRangeComplex|XYZRange|matrix|ButtonInfo|LineInfo|TextInfo|EventInfo|MarkerInfo|RectInfo|Column|MatrixObject|Image|DataPlot|Page|GraphPage|WorksheetPage|MatrixPage|GraphLayer|Worksheet|MatrixLayer|TreeNode|FileLink|ReportTree|ReportData|GraphPageBase|Layer" DataID="40">double</type><valdata NodeID="14" Label="Data" DataID="50" Enable="1">0.05</valdata><comboString NodeID="11" Label="Control" DataID="70"></comboString><context NodeID="268435456" Label="Context" DataID="71"></context><optionString NodeID="11" Label="Option String" DataID="69"></optionString><suggestedValues NodeID="11" Label="Suggested Values" DataID="405"></suggestedValues><themeID NodeID="14" Label="Theme ID" DataID="35">3</themeID><help NodeID="268435456" Label="English Help" DataID="410" RepeatID="256"><description NodeID="11" Label="Display Name" DataID="408">Significance Level</description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8">Specify the significance level of the test.</remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3"></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407"></comboDescription></help><helpj NodeID="268435456" Label="Japanese Help" DataID="410" RepeatID="512"><description NodeID="11" Label="Display Name" DataID="408" CdPg="932">有意水準</description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="932"></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="932"></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="932"></comboDescription></helpj><helpg NodeID="268435456" Label="German Help" DataID="410" RepeatID="768"><description NodeID="11" Label="Display Name" DataID="408" CdPg="1252">Signifikanzniveau</description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="1252"></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="1252"></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="1252"></comboDescription></helpg><helpc NodeID="268435456" Label="Chinese Help" DataID="410" RepeatID="1024"><description NodeID="11" Label="Display Name" DataID="408" CdPg="936"></description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="936"></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="936"></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="936"></comboDescription></helpc></v2><v3 _XFUNCTION_VAR="1" RepeatID="2"><name NodeID="11" Label="Name" DataID="10">rt</name><description NodeID="11" Label="Label" DataID="20" Show="0">Ergebnisausgabe</description><io NodeID="13" Label="Input/Output" Combo="Input|Output|Input/Output" DataID="30">1</io><type NodeID="11" Label="Data Type" Combo="double|string|int|vector|vector&lt;string&gt;|vector&lt;complex&gt;|Range|XYRange|XYRangeComplex|XYZRange|matrix|ButtonInfo|LineInfo|TextInfo|EventInfo|MarkerInfo|RectInfo|Column|MatrixObject|Image|DataPlot|Page|GraphPage|WorksheetPage|MatrixPage|GraphLayer|Worksheet|MatrixLayer|TreeNode|FileLink|ReportTree|ReportData|GraphPageBase|Layer" DataID="40">ReportTree</type><valdata NodeID="81" Label="Data" DataID="50" _DROP_DOWN_BUTTON_ID="2112|0">[&lt;input&gt;]&lt;new&gt;</valdata><comboString NodeID="11" Label="Control" DataID="70"></comboString><context NodeID="268435456" Label="Context" DataID="71"></context><optionString NodeID="11" Label="Option String" DataID="69">N:sheet:=FriedmanANOVA1; P:0;O:A</optionString><suggestedValues NodeID="11" Label="Suggested Values" DataID="405"></suggestedValues><themeID NodeID="14" Label="Theme ID" DataID="35">2</themeID><help NodeID="268435456" Label="English Help" DataID="410" RepeatID="256"><description NodeID="11" Label="Display Name" DataID="408">Output Results</description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8">Output results, including report table of Descriptive Statistics, Ranks and Test Statistics</remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3">Output results</hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407"></comboDescription></help><helpj NodeID="268435456" Label="Japanese Help" DataID="410" RepeatID="512"><description NodeID="11" Label="Display Name" DataID="408" CdPg="932">結果の出力</description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="932">出力結果、記述統計、順位、検定の統計量のレポート表を含む</remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="932">結果の出力</hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="932"></comboDescription></helpj><helpg NodeID="268435456" Label="German Help" DataID="410" RepeatID="768"><description NodeID="11" Label="Display Name" DataID="408" CdPg="1252">Ergebnisausgabe</description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="1252">Ausgabeergebnisse, einschließlich einer Berichtstabelle der Deskriptiven Statistik, Ränge und Teststatistiken.</remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="1252">Ergebnisausgabe</hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="1252"></comboDescription></helpg><helpc NodeID="268435456" Label="Chinese Help" DataID="410" RepeatID="1024"><description NodeID="11" Label="Display Name" DataID="408" CdPg="936"></description><remark NodeID="41" Label="Description" DataID="409" RowHeightRange="3-8" CdPg="936"></remark><hint NodeID="41" Label="Auto Complete Hint" DataID="406" RowHeightRange="1-3" CdPg="936"></hint><comboDescription NodeID="47" Label="Option Explanations" DataID="407" CdPg="936"></comboDescription></helpc></v3></vars><modificationLog NodeID="41" Label="Modification Log" DataID="438" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="2-15">Echo 1/5/06 Initially complete doc
Fay.6/6/06. Correct some details.
Echo 3/2/07 update some details and the document is finished
Fay. 7/27/07. Review document.
8/15/07. Fay. Review and modify Command Line Usage.</modificationLog><codes NodeID="268435456" Label="Code" DataID="324"><rettype NodeID="11" Label="Return Type" Combo="void|int|double|string|vector" DataID="41">void</rettype><header NodeID="45" Label="Header" DataID="323" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="3-15"><![CDATA[#include <stats_utils.h>
#include <report_utils.h>
#include <event_utils.h>
#include <o8dlg.h>
//put additional include files here

//put your own support static functions here

/*------------------------------------------------------------------------------*
 * Modification Log:															*
 *	ML 12/14/2006 ADD_INPUT_DATA_TABLE_FRIEDMAN									*
 *	Jacky 07/22/10 ORG-102 USER_CAN_SET_SIGNIFICANCE_LEVEL						*
 *------------------------------------------------------------------------------*/


#define FRI_MIN_DATA_SIZE	4
#define	FRI_MIN_BLOCK_TREATMENT	2
#define FRI_MAX_GROUP	100

//XF error definition
//enum
//{
	//ERR_TOO_FEW_DATA = XF_LOCAL_ERR_BEGIN,
	//ERR_TOO_FEW_BLOCK_TREATMENT,
	//ERR_NOT_SAME_SIZE,
	//ERR_NOT_1_DATA_PER_CELL,
//};

static int _friedman_check_indata(Range& rRange, vector& vData, vector& vTreatment, vector& vBlock, vector<string>& vstrGroup)
{
	if ( !rRange )
		return CER_INVALID_RANGE;

	DWORD		dwRules = DRR_RM_ANOVA;
	Worksheet	wksTemp;
	int nn = rRange.GetNumData(dwRules, NULL, &wksTemp, NULL, NULL);
	if (nn == -98 || nn == -97)
	{
		return CER_NOT_1_DATA_PER_CELL;
	}
	if (nn <= 0)
	{
		return CER_NOT_RM_ANOVA_DATA;
	}	
	
	matrix		mData;
	int			nOutcome, numFactorVals;
	nn = rRange.GetDataRMOneWayANOVA(dwRules, nOutcome, numFactorVals, &mData, &vstrGroup);
	switch (nOutcome)
	{
	case RMDATA_ERR_ONE_WAY_MISSING_VALUES_FOUND:
	case RMDATA_ERR_ONE_WAY_GENERAL_ILLEGAL_DATA:
		return CER_NOT_1_DATA_PER_CELL;
		break;
	case RMDATA_ERR_ONE_WAY_MISSING_SUBJECT_DATA:
		return CER_NOT_RM_ANOVA2_DATA;	
	}
	if (nn < 0 )	
	{
		return CER_NOT_RM_ANOVA_DATA;
	}
	if (mData.GetNumRows() < ANOVA2_MIN_FACTOR_SUBJECT || mData.GetNumCols() < ANOVA2_MIN_FACTOR_SUBJECT)
	{
		return CER_TO_FEW_FACTOR;
	}
	
	vector vTemp;
	int nCols = mData.GetNumCols(), nRows = mData.GetNumRows();
	for (int ii = 0; ii < nCols; ii++)
	{
		vTemp.SetSize(nRows);
		vTemp = ii+1;
		vTreatment.Append(vTemp);
		vTemp.Data(1, nRows);
		vBlock.Append(vTemp);
	}
	
	mData.GetAsVector(vData, false);
				
	return CER_NO_ERROR;
	
}
]]></header><code NodeID="45" Label="Expression" DataID="325" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="5-20"><![CDATA[
vector vData, vBlock, vTreatment;
vector<string> vstrGroup;
int nErr = _friedman_check_indata(irng, vData, vTreatment, vBlock, vstrGroup);
if ( CER_NO_ERROR != nErr )
{
	if (CER_DATA_TOO_FEW == nErr)
		XF_THROW_EX(CER_DATA_TOO_FEW, FRI_MIN_DATA_SIZE)
	else
		XF_THROW(nErr);
}


DescStatResults pDescStats[FRI_MAX_GROUP];
QuantileResults pQuantiles[FRI_MAX_GROUP];
desc_stats_group(vData, vTreatment, pDescStats, pQuantiles);
LPCSTR lpsczLabel = _L("Friedman ANOVA");
report_tree_create(rt, lpsczLabel, "irng");

///Echo 1/5/07 MOVE_TO_REPORT_TREE_CREATE
/*
/// ML 12/14/2006 ADD_INPUT_DATA_TABLE_FRIEDMAN 
XFExeContext	*pxfexectxt = Project.GetCurrentXFExeCtxt();
// Create table and add entries to it for argument "irng":
pxfexectxt->AddInputToTree(rt, "irng", _L("Input"));
/// end ADD_INPUT_DATA_TABLE_FRIEDMAN 
*/
///END MOVE_TO_REPORT_TREE_CREATE

rt_add_nph_descriptive(rt, pDescStats, pQuantiles, vstrGroup);

NPHSummary FrieSummary[FRI_MAX_GROUP];
NPHRanks FrieRanks[FRI_MAX_GROUP];
NPHStats FrieStats;
int nRet = ocmath_friedman_test(vData, vData.GetSize(), vTreatment, vTreatment.GetSize(), vBlock,vBlock.GetSize(), FrieSummary, FrieRanks, &FrieStats);
if (nRet != STATS_NO_ERROR)
{
	XF_THROW_EX(CER_UNKNOWN_ERROR_EX, nRet);
}

rt_add_nph_ranks(rt, FrieRanks, vstrGroup);

string strHYPT, strFooter1, strFooter2;
ocu_load_err_msg_str(FOOTNOTE_NPH_K_SAMPLE, &strHYPT);
ocu_load_err_msg_str(FOOTNOTE_FRIEDMAN_CON_DIFF, &strFooter1);
ocu_load_err_msg_str(FOOTNOTE_FRIEDMAN_CON_SAME, &strFooter2);
//--- Jacky 07/22/10 ORG-102 USER_CAN_SET_SIGNIFICANCE_LEVEL
//rt_add_nph_stats(rt, FrieStats, vstrGroup, strFooter1, strFooter2, strHYPT,NULL);
rt_add_nph_stats(rt, FrieStats, vstrGroup, strFooter1, strFooter2, strHYPT,NULL,false,NULL,alpha);
//--- end USER_CAN_SET_SIGNIFICANCE_LEVEL
		]]></code><event1 NodeID="45" Label="Event1" DataID="327" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="5-20" Show="0"><![CDATA[
TreeNode trRange = trGetN.irng;
Range rRange;
okxf_resolve_tree_construct_range(&trRange, &rRange);
vector vData, vBlock, vTreatment;
vector<string> vstrGroup;
int nErr = _friedman_check_indata(rRange, vData, vTreatment, vBlock, vstrGroup);
if (CER_NO_ERROR != nErr)
{
	bOKEnable = false;
	strErrMsg = nErr;
	if (CER_DATA_TOO_FEW == nErr) strErrMsg += ":" + FRI_MIN_DATA_SIZE;
}
//DynaCntrlContainer.PostMessage(WM_USER_MSG_ON_DLG, nErr, FRI_MIN_DATA_SIZE);

/*
if ( GETNE_ON_OK == nEventID && rRange)	
{
	vector vData, vBlock, vTreatment;
	vector<string> vstrGroup;
	if ( OE_NOERROR != nErr )
	{
		if (CER_DATA_TOO_FEW == nErr)
			DynaCntrlContainer.PostMessage(WM_USER_MSG_BOX, CER_DATA_TOO_FEW, FRI_MIN_DATA_SIZE);
		else
			DynaCntrlContainer.PostMessage(WM_USER_MSG_BOX, nErr);
		bOKEnable = false;		
	}
}
*/
int nErr2 = hyt_check_input(trGetN);
if (nErr2 != CER_NO_ERROR)
{
	bOKEnable = false;
	strErrMsg = nErr2;
}
return true;	]]></event1><event2 NodeID="45" Label="Event2" DataID="376" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="5-20" Show="0"><![CDATA[
return false;
]]></event2><event3 NodeID="45" Label="Event3" DataID="378" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="5-20" Show="0"><![CDATA[
//------ fisher 11/16/07 ADD_MAP_ID_TO_CHM
if(is_use_origin_chm())
	trGetN.SetAttribute(STR_HELPID_ATTRIB, IDD_XF_friedman);

if ( (dwCntrl&LTXF_THEME_USED) && nGetNDialog <= 0 )
{
	TreeNode trRange = trGetN.irng;
	Range rRange;
	okxf_resolve_tree_construct_range(&trRange, &rRange);
	vector vData, vBlock, vTreatment;
	vector<string> vstrGroup;
	int nErr = _friedman_check_indata(rRange, vData, vTreatment, vBlock, vstrGroup);
	if ( CER_NO_ERROR != nErr )
		nRet = XFEVT_PROCEED_WITH_DLG;
}
]]></event3><event4 NodeID="45" Label="Event4" DataID="377" MultilineEditExpShrink="1" DispFormat="33554432" RowHeightRange="5-20" Show="0"><![CDATA[return false;]]></event4><GetNEvent NodeID="47" Label="GetNBox Event" DataID="379" Show="0" TypeID="65543" BlobArrElementaryType="8" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">AA==</GetNEvent></codes><SaveInOpj NodeID="10" Label="Save with Object" DataID="560">0.</SaveInOpj><optargindex NodeID="14" Label="Option Argument Index" DataID="72">0.</optargindex><version NodeID="14" Label="Version" DataID="73">1.1000000000000001</version><category NodeID="11" Label="Primary Category" DataID="74" Show="0">Statistics\Nonparametric Tests</category><subcategory NodeID="11" Label="Primary Subcategory" DataID="77" Show="0"></subcategory><seccategory1 NodeID="11" Label="Secondary Category" DataID="75" Show="0"></seccategory1><secsubcategory1 NodeID="11" Label="Secondary Subcategory 1" DataID="78" Show="0"></secsubcategory1><seccategory2 NodeID="11" Label="Secondary Category 2" DataID="76" Show="0"></seccategory2><secsubcategory2 NodeID="11" Label="Secondary Subcategory 2" DataID="79" Show="0"></secsubcategory2><module NodeID="11" Label="Module" DataID="80">Pro</module><subGroup NodeID="17" Label="Subgroup Index Within a Category" Combo="-10|-9|-8|-7|-6|-5|-4|-3|-2|-1|0|1|2|3|4|5|6|7|8|9" DataID="82">4</subGroup><errmsgCount NodeID="14" Label="Number of Error Messages" DataID="412">0</errmsgCount><helpe NodeID="268435456" Label="English Help" DataID="420" RepeatID="256"><info NodeID="41" Label="Auto Complete Hint" DataID="422" RowHeightRange="2-8"><![CDATA[ &Friedman ANOVA: Perform a Friedman ANOVA on two or more paired groups]]></info><summary NodeID="47" Label="Summary" DataID="421" Show="0"><![CDATA[]]></summary><example NodeID="47" Label="Examples" DataID="431" Show="0"><![CDATA[]]></example><ref NodeID="47" Label="References" DataID="432" Show="0"><![CDATA[]]></ref><algorithm NodeID="47" Label="Algorithm" DataID="434" Show="0"><![CDATA[]]></algorithm><parameters NodeID="47" Label="Parameters" DataID="444" Show="0"><![CDATA[]]></parameters><script NodeID="41" Label="LabTalk Script Example" Show="0" DataID="436" RowHeightRange="2-12"></script><errmsgs NodeID="47" Label="Error Messages" DataID="413" Show="0" TypeID="65543" BlobArrElementaryType="8" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">RXJyb3I6IFRvbyBmZXcgZGF0YSBwb2ludHMhAEF0IGxlYXN0IDIgYmxvY2tzIGFuZCAyIHRy
ZWF0bWVudHMhAFRoZSBmb2xsb3dpbmcgbXVzdCBiZSB0aGUgc2FtZSBsZW5ndGg6IGRhdGEg
cmFuZ2UsIHRyZWF0bWVudCByYW5nZSBhbmQgYmxvY2tzIHJhbmdlIQBNdXN0IGhhdmUgb25l
IGRhdGEgcGVyIGNlbGwhAAA=</errmsgs></helpe><helpj NodeID="268435456" Label="Japanese Help" DataID="420" RepeatID="512"><description NodeID="11" Label="Description" DataID="440" CdPg="932">FriedmanのANOVA:FriedmanのANOVAを行う。</description><customButtons NodeID="11" Label="GetN Dialog Custom Buttons" DataID="448" CdPg="932"></customButtons><info NodeID="41" Label="Auto Complete Hint" DataID="422" RowHeightRange="2-8" CdPg="932">Friedman?ANOVA(&amp;F): ?????2????Friedman?ANOVA???????</info><summary NodeID="47" Label="Summary" DataID="421" Show="0" CdPg="932"><![CDATA[]]></summary><example NodeID="47" Label="Examples" DataID="431" Show="0" CdPg="932"><![CDATA[]]></example><ref NodeID="47" Label="References" DataID="432" Show="0" CdPg="932"><![CDATA[]]></ref><algorithm NodeID="47" Label="Algorithm" DataID="434" Show="0" CdPg="932"><![CDATA[]]></algorithm><parameters NodeID="47" Label="Parameters" DataID="444" Show="0" CdPg="932"><![CDATA[]]></parameters><script NodeID="41" Label="LabTalk Script Example" Show="0" DataID="436" RowHeightRange="2-12" CdPg="932"></script><errmsgs NodeID="47" Label="Error Messages" DataID="413" Show="0" CdPg="932"></errmsgs></helpj><helpg NodeID="268435456" Label="German Help" DataID="420" RepeatID="768"><description NodeID="11" Label="Description" DataID="440" CdPg="1252">Friedman ANOVA:Eine Friedman ANOVA durchführen</description><customButtons NodeID="11" Label="GetN Dialog Custom Buttons" DataID="448" CdPg="1252"></customButtons><info NodeID="41" Label="Auto Complete Hint" DataID="422" RowHeightRange="2-8" CdPg="1252"><![CDATA[ Friedman ANOVA: Eine Friedman ANOVA an zwei oder mehreren verbundenen Gruppen durchführen]]></info><summary NodeID="47" Label="Summary" DataID="421" Show="0" CdPg="1252"><![CDATA[]]></summary><example NodeID="47" Label="Examples" DataID="431" Show="0" CdPg="1252"><![CDATA[]]></example><ref NodeID="47" Label="References" DataID="432" Show="0" CdPg="1252"><![CDATA[]]></ref><algorithm NodeID="47" Label="Algorithm" DataID="434" Show="0" CdPg="1252"><![CDATA[]]></algorithm><parameters NodeID="47" Label="Parameters" DataID="444" Show="0" CdPg="1252"><![CDATA[]]></parameters><script NodeID="41" Label="LabTalk Script Example" Show="0" DataID="436" RowHeightRange="2-12" CdPg="1252"></script><errmsgs NodeID="47" Label="Error Messages" DataID="413" Show="0" CdPg="1252"></errmsgs></helpg><helpc NodeID="268435456" Label="Chinese Help" DataID="420" RepeatID="1024"><description NodeID="11" Label="Description" DataID="440" CdPg="936"></description><customButtons NodeID="11" Label="GetN Dialog Custom Buttons" DataID="448" CdPg="936"></customButtons><info NodeID="41" Label="Auto Complete Hint" DataID="422" RowHeightRange="2-8" CdPg="936"></info><summary NodeID="47" Label="Summary" DataID="421" Show="0" CdPg="936"><![CDATA[]]></summary><example NodeID="47" Label="Examples" DataID="431" Show="0" CdPg="936"><![CDATA[]]></example><ref NodeID="47" Label="References" DataID="432" Show="0" CdPg="936"><![CDATA[]]></ref><algorithm NodeID="47" Label="Algorithm" DataID="434" Show="0" CdPg="936"><![CDATA[]]></algorithm><parameters NodeID="47" Label="Parameters" DataID="444" Show="0" CdPg="936"><![CDATA[]]></parameters><script NodeID="41" Label="LabTalk Script Example" Show="0" DataID="436" RowHeightRange="2-12" CdPg="936"></script><errmsgs NodeID="47" Label="Error Messages" DataID="413" Show="0" CdPg="936"></errmsgs></helpc><SkipHiddenInDlg NodeID="10" Label="Skip hidden in dialog" DataID="295">0.</SkipHiddenInDlg><ClearMsg NodeID="10" Label="Auto Clear Error Message in dialog" DataID="296">1.</ClearMsg><KeepBtnStatus NodeID="10" Label="Keep Button Status for Event Handler" DataID="298">0.</KeepBtnStatus><SptApplyUndoButtonSts NodeID="10" Label="Control Apply and Undo button by User" DataID="294">0.</SptApplyUndoButtonSts><PreviewButton NodeID="10" Label="Show Preview Button" DataID="299">0.</PreviewButton><AutoApplyChkbox NodeID="10" Label="Show Auto Apply CheckBox" DataID="290">1.</AutoApplyChkbox><SkipHelpDoc NodeID="10" Label="Skip Help Document Processing" DataID="297">0.</SkipHelpDoc><SupportFolderLastUsed NodeID="10" Label="Support Folder Last Used Theme" DataID="291">0.</SupportFolderLastUsed><NotCloseOnEnterKey NodeID="10" Label="Do not Close Dialog upon Enter Key" DataID="292">0.</NotCloseOnEnterKey><seeAlso NodeID="11" Label="See Also" DataID="430"></seeAlso><relatedXF NodeID="11" Label="Related X-Functions" DataID="442"></relatedXF></OriginStorage>
