Hi JMP Team and Community !
Here is a wish for DoE based on covariates from different tables (I'm using JMP Pro 17).
- What inspired this wish list request?
Design of Experiments based on covariates factors from two tables - JMP User Community
I have faced a difficult situation to setup a DoE with 5 covariates :
- 2 covariates, from a table A, are predicted physico-chemical properties of formulations (thanks to the model of a first DoE),
- 3 covariates, independent from the first ones, from a table B, are characteristics of different packagings.
I wanted to create a model (screening main effects and interactions, some set as "if possible" and other "necessary" with 30 runs) with these 5 covariates to evaluate relationships and interactions between formulation covariates and packaging characteristics on the response, but when I use "Custom Design" and want to add covariates, I only have the option to add covariates from the table on which I create a Custom DoE (table A OR table B). @SDF1 suggested to select the top level data table before adding the covariate term, which indeed works, but is not satisfactory for me regarding my settings :
- Covariates Ax and Bx should be independent from each other, which is not the case anymore with this technique (since JMP seems to do an outer join based on the biggest table (or inner join) with rowID as the join option),
- When doing the design, due to the joining done on the two tables, not all combinations are explored (covariates from A don't meet all conditions with covariates from B), and I have a poorly efficient design :
Script of the design:
DOE(
Custom Design,
{Add Response( Maximize, "Y", ., ., . ),
Add Factor( Covariate, Covariate A1, 0 ),
Add Factor( Covariate, Covariate A2, 0 ),
Add Factor( Covariate, Covariate B1, 0 ),
Add Factor( Covariate, Covariate B2, 0 ),
Add Factor( Covariate, Covariate B3, 0 ), Set Random Seed( 695832949 ),
Number of Starts( 3479 ), Add Term( {1, 0} ), Add Term( {1, 1} ),
Add Term( {2, 1} ), Add Term( {3, 1} ), Add Term( {4, 1} ), Add Term( {5, 1} ),
Add Term( {1, 1}, {2, 1} ), Add Term( {1, 1}, {3, 1} ),
Add Term( {1, 1}, {4, 1} ), Add Term( {1, 1}, {5, 1} ),
Add Potential Term( {2, 1}, {3, 1} ), Add Potential Term( {2, 1}, {4, 1} ),
Add Potential Term( {2, 1}, {5, 1} ), Add Potential Term( {3, 1}, {4, 1} ),
Add Potential Term( {3, 1}, {5, 1} ), Add Potential Term( {4, 1}, {5, 1} ),
Set Sample Size( 30 ), Simulate Responses( 0 ), Save X Matrix( 0 ), Make Design}
);
Since then, I have found an "external" solution by creating a new table with all covariates from the two tables, and so create all possible combinations A/B of the 2 factors from table A with 3 factors from table B thanks to a low-code tool and some looping. When creating the custom design on this table, I find a more satisfactory design :
I joined the different tables for testing (not the same as for my topic for confidentiality reason, but tried my best to have a mock-up for illustrating the situation).
- What is the improvement you would like to see?
It would be great if there was a solution where JMP would :
- Ask us to choose the table on which the covariates are located (in case of separate tables containing covariates),
- Be able to store the data in memory and give us the possibility to do all the combinations in the background when building the design based on two covariates tables. Perhaps an option to check "independent covariates" ?
- Why is this idea important?
The Custom design is an excellent tool to deal with covariates and create optimal designs tailored to specific situations. This upgrade would make the tool even more powerful and adaptive, as it would be able to create designs with covariates from different tables and suggest adequate designs.
I hope my wish is clear, if not, don't hesitate to comment or come back to me,
Thanks a lot in advance !