BookmarkSubscribeRSS Feed
Choose Language Hide Translation Bar
asvp
Community Trekker

Deleting rows using JSL scripts

How can we delete rows from a data table (using JMP script) when some columns in this data table satisfy a particular criteria?

Using Delete Rows is not working for me in my script.

Thanks
0 Kudos
2 ACCEPTED SOLUTIONS

Accepted Solutions
ms
Super User ms
Super User

Re: Deleting rows using JSL scripts

Here is one way to do it.

dt = Current Data Table();
For Each Row( Row State() = Selected State( criteriacolumn[] == criteria ) );
dt << delete rows();
pmroz
Super User

Re: Deleting rows using JSL scripts

Here's another way. I don't know if it's any faster.

dt << select where(:N < min_case_value);
dt << delete rows;
0 Kudos
5 REPLIES 5
ms
Super User ms
Super User

Re: Deleting rows using JSL scripts

Here is one way to do it.

dt = Current Data Table();
For Each Row( Row State() = Selected State( criteriacolumn[] == criteria ) );
dt << delete rows();
asvp
Community Trekker

Re: Deleting rows using JSL scripts

Thanks MS, it works.
0 Kudos
pmroz
Super User

Re: Deleting rows using JSL scripts

Here's another way. I don't know if it's any faster.

dt << select where(:N < min_case_value);
dt << delete rows;
0 Kudos
mpb
Super User mpb
Super User

Re: Deleting rows using JSL scripts

> Here's another way. I don't know if it's any
> faster.

Well I made a table with 6 columns and 100,000 rows and the For solution took about 1 second and the direct select took "0" seconds.

When I increased the number of rows to 1,000,000 then the For solution took 11 or 12 seconds and the direct select took 3 seconds.

So on my pc running winXP using this particular table the direct select is about 4 times faster but you would need a really large table to notice the difference.

Michael
0 Kudos
ms
Super User ms
Super User

Re: Deleting rows using JSL scripts

Thanks!

Fast is good. The direct method has also the advantage that easier to read (and remember).

The loop method still is useful when you need to set other or combined row states.
0 Kudos