- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Beginner JSL query
I want to save selected rows from a table in a jmp file and also the inversion of the selected rows in another jmp file after using the partition function. I went through some examples and other threads but I am not able to save the selected rows and the inverted rows. I must be doing something wrong. Does anyone have any idea how it can be done in JSL?
Names Default To Here( 1 );
dt = Open( "C:/Users/Desktop/driver/MASTER.jmp" );
f = Function({a}, theRows = Current Data Table() << get selected rows;
Show(theRows);
);
obj = Partition(
Y( :Failed ),
X(
:VOLUME,
:FAMILY,
:CONFIG
),
Method( "Decision Tree" ),
Validation Portion( .2 )
);
obj << ShowGraph( 0 );
obj << SplitBest( 4 );
obj << on close( Clear Symbols( rs ) );
action = 0;
actionsubset = 0;
look_window = New Window( "Decision",
Lineup Box( N Col( 1 ),
V List Box(
Text Box( "After selection of the rows,go for Plot?" ),
H List Box(
spacer box(size(100,5)),
Button Box( "Continue",
action = 1;
look_window << close window;
//obj << Save( "C:\Users\Desktop\test.csv" );
//filepath = "C:\Users\Desktop\driver";
//rs << save( filepath || "\" || "p1.jmp" );
Include("C:/Users/Desktop/driver/plot.jsl");
),
Button Box( "Close",
action = 2;
Close( obj, nosave );
//Throw( "You cancelled the script." );
),
)
),
)
);
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Beginner JSL query
The first item I can see, is that you are setting the variable "obj" to be a pointer to the output report for the Partition platform, and then in the New Window, you are using "obj" as if it is a pointer to your data table. The pointer to your data table is the variable "dt" created when you opened the table.
Below is a simple example that shows a simple way to create a data table from selected rows, and then to create another data table from the inverse of that selection
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dt << select where( :sex == "F" );
dtF = dt << subset( selected rows( 1 ), selected columns( 0 ) );
dt << invert row selection;
dtM = dt << subset( selected rows( 1 ), selected columns( 0 ) );
close( dt, nosave );
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Beginner JSL query
The first item I can see, is that you are setting the variable "obj" to be a pointer to the output report for the Partition platform, and then in the New Window, you are using "obj" as if it is a pointer to your data table. The pointer to your data table is the variable "dt" created when you opened the table.
Below is a simple example that shows a simple way to create a data table from selected rows, and then to create another data table from the inverse of that selection
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dt << select where( :sex == "F" );
dtF = dt << subset( selected rows( 1 ), selected columns( 0 ) );
dt << invert row selection;
dtM = dt << subset( selected rows( 1 ), selected columns( 0 ) );
close( dt, nosave );