拟合组并按 X 拟合 Y你好! 我正在尝试编写一个分析脚本,其中用户输入数据表,并且脚本通过列对话框将用户选择的列作为 Y 和所有其他列(可以是连续和连续列的任意组合)运行 Y × X 拟合。名义变量)作为 X 选择。 有没有一种方法可以同时使用 fit Y by X 和 Fit Group 来获得这个一体化窗口,并轻松地按照拟合优度对结果进行排序?
这是我编写的一个脚本,将它们全部输出在一个框中,但我希望用户能够通过方差分析轻松找到显着的拟合。 理想情况下,我想输出与表格报告窗口的显着拟合,但这超出了我目前的知识范围。 任何帮助,将不胜感激!
Names Default To Here( 1 );
dt = Current Data Table();
dlg = Column Dialog(
iv = ColList( "Depedent Variable",
Min Col( 1 ),
Max Col( 1 ),
Data Type( "Numeric" )
)
);
If( dlg["Button"] != 1,
Beep();
Throw();
);
iv = dlg["iv"];
n_cols = N Cols( dt );
New Window( "Report",
H List Box(
For( c = 1, c <= n_cols, c++,
Fit Y by X(
Y( Column( iv[1] ) ),
X( Column( c ) ),
Fit Line( 1 ),
Anova( 1 )
)
)
)
);
自动化和脚本编写视窗回复:拟合组并通过 X 拟合 Y下面的脚本运行“通过 X 拟合 Y”,然后输出所有分析的“拟合摘要”表。我希望这就是你想要的。
Names Default To Here( 1 );
dt = Current Data Table();
dlg = Column Dialog(
iv = ColList( "Depedent Variable",
Min Col( 1 ),
Max Col( 1 ),
Data Type( "Numeric" )//,
//modeling type(ordinal,nominal)
)
);
If( dlg["Button"] != 1,
Beep();
Throw();
);
iv = Char( dlg["iv"][1] );
// Get the names of all of the columns in the data table
colNameList = dt << get column names( string );
// Remove the Dependent Column from the list
Remove From( colNameList, Contains( colNameList, iv ), 1 );
ft = Fit Y by X(
Y( Column( iv ) ),
X( Eval( colNameList ) ),
Fit Line( 1 ),
Anova( 1 )
);
(ft << report)[1]["Summary of Fit", Table Box( 1 )] << make combined data table;
这里有一些注意事项:
- 当您发布 JSL 时,请使用 JSL 图标打开 JSL 窗口并将代码复制到该窗口中。它可以更清晰地显示条目。
- 您需要花时间阅读《脚本指南》,该指南可在 JMP 文档库的“帮助”下拉菜单下找到。
- Column Dialog() 结构已被弃用。您需要转向使用带有 Col List Box() 的新窗口。
回复:拟合组并通过 X 拟合 Y非常感谢!