简体   繁体   English

在JSL JMP中从拟合模型向表中拉出r平方

[英]pull out r squared from fit model to table in JSL JMP

I'm trying to figure out how to use JSL to write some of the analysis of variance variables values to a table in JMP. 我试图弄清楚如何使用JSL将一些方差变量值分析写入JMP中的表。 My idea is to write a script that runs different types of models with different parameters with R^2 and RSME logging to a table (maybe there is a better way to do this I'm on my second day of JMP). 我的想法是编写一个脚本,该脚本使用R ^ 2和RSME日志将运行具有不同参数的不同类型的模型,并将其记录到表中(也许我在JMP的第二天就可以做到这一点)。 Going through the documentation it seems that different analysis have different ways of doing this and I can't find one for "fit model". 浏览文档,似乎不同的分析有不同的方法来执行此操作,而我找不到适合“拟合模型”的方法。 I also will need to know how to do this for a neural network which I think I may have found the documentation for. 我还需要知道如何为神经网络执行此操作,我认为我可能已经找到了该文档。

If you're doing something like screening variables to determine an optimized model, you're in the right place with the fit model platform. 如果您正在做类似筛选变量来确定优化模型的事情,那么适合模型平台就在正确的位置。 However, running the fit model in a loop without human judgment in model selection as you've suggested isn't necessarily expedient. 但是,如您所建议的那样,在没有人为选择模型的情况下,在循环中运行拟合模型并不一定是合宜的。

So at the expense of trying to make JMP/JSL do something it's not really suited for, one way to achieve your generic goal of grabbing text from the fit model platform output is to send your platform to a "report" and then pull from that "report" the data you want, and then send it to a data table. 因此,以尝试使JMP / JSL做它不真正适合的事情为代价,实现从fit model平台输出中获取文本的通用目标的一种方法是将平台发送到“ report”,然后从中退出。 “报告”所需的数据,然后将其发送到数据表。 From that data table, you can concatenate it with another data table and you would have your log. 从该数据表中,您可以将其与另一个数据表连接起来,这样就可以得到日志。 That's the idea, here's an example, for some dummy data "Ydata" and "Xdata": 这是一个示例,用于一些虚拟数据“ Ydata”和“ Xdata”:

thing = Fit Model(
    Y( :Ydata ),
    Effects( :Xdata ),
    Personality( Standard Least Squares ),
    Emphasis( Minimal Report ),
    Run(
        :Ydata << {Plot Actual by Predicted( 0 ),
        Plot Residual by Predicted( 0 ), Plot Effect Leverage( 0 )}
    )
);

thing_report = thing<<report;
thing_report_dt_ref = thing_report["Summary of Fit"][1] << make into data table;
//alternatively
//thing_report_dt_ref = thing_report[TableBox(1)] << make into data table;

thing_report_dt_ref << Set Name("Choose_a_name_for_your_new_data_table");

You'd have to handle the looping part, but if you can do it once, you can do it N times. 您必须处理循环部分,但是如果可以执行一次,则可以执行N次。

Because JMP/JSL is stupid, you can alternatively call the "Summary of Fit" directly if your know it's name in the tree structure. 由于JMP / JSL是愚蠢的,因此,如果知道树结构中的名称,则可以直接调用“适合摘要”。 In my case, its name was "TableBox(1)". 在我的情况下,其名称为“ TableBox(1)”。 Do: 做:

thing << show tree structure

To see where your data lives in the platform display box. 在平台显示框中查看数据所在的位置。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM