I would approach this differently. By placing all of the output into a single window, the
<< Make Combined Data Table
will work as desired. Working across separate windows will be an issue.
I choose to modify the list of x columns one wants to use, and then apply it to only one Bivariate execution
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Fishing.jmp" );
colList = dt << get column names( string );
For( i = N Items( colList ), I >= 1, i--,
If( Contains( colList[i], "Validation" ) | Contains( colList[i], "People" ),
Remove From( colList, i, 1 )
)
);
biv = Bivariate(invisible,
Y( :Fish Caught ),
X( eval(colList) ),
Fit Line( {Line Color( "Medium Dark Red" )} ),
By( :Validation )
);
// Create the data table of RSqares
dtR2 = report(biv[1])["Summary of Fit"][tablebox(1)]<< make combined data table;
dtSlope = report(biv[1])["Parameter Estimates"][tablebox(1)]<< make combined data table (invisible);
dtR2 << select where(:Column 1 != "RSquare");
dtR2 << delete rows;
dtR2:Column 2 << set name("RSquare");
dtR2 << delete Columns({"Validation 2","Column 1"});
There is also a Platform that you may want to explore, that directly produces the report you want.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Fishing.jmp" );
colList = dt << get column names( string );
For( i = N Items( colList ), I >= 1, i--,
If( Contains( colList[i], "Validation" ) | Contains( colList[i], "People" ) |
Contains( colList[i], "Fish Caught" ),
Remove From( colList, i, 1 )
)
);
Response Screening(
Y( :Fish Caught ),
X( eval(colList) ),
Where( Format( :Validation ) == "Training" )
);
Jim