cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Don’t miss your chance to experience Discovery Summit Europe at our best available rate! Early bird registration through 31 Oct.
  • Graph Builder Toolbar streamlines interactive graphing. Creates shortcuts on Report and GraphBuilder Helpers toolbars. Download and install the extension.
  • JMP will suspend normal business operations for our Rest and Recharge Day on Friday, October 2, 2026.
    Regular business hours will resume on Monday, October 5, 2026.

Discussions

Solve problems, and share tips and tricks with other JMP users.
Choose Language Hide Translation Bar
jamiesupica0
Level II

Labeling rows as greater/less than a date with JSL

I have a dataset with a date column formatted dd/mm/yyyy hh:mm.  In my script I want to be able to set a variable equal to some date and then have the script create a new column labelling all rows as being “before” of “after” the specified date.

The workaround I’m using is to format the variable and the column in seconds but it’s not easy to read.

Is there a way to keep the dd/mm/yyyy formatting when setting the variable in the script and also have it work in a formula?

This is the script that doesn’t work:

varProcessChange = 03/20/2016 00:01

 

colCondition = New Column (“Condition”)

                <<data type (character)

                <<Modeling Type (“Nominal”)

                <<Set Formula (If(:Event Date < varProcessChange, “Before”, “After”)

 

1 ACCEPTED SOLUTION

Accepted Solutions
txnelson
Super User

Re: Labeling rows as greater/less than a date with JSL

Here is a script that is very similar to what you want to do

Names Default To Here( 1 );
dt = open("$SAMPLE_DATA\Time Series\Raleigh Temps.jmp");
varProcessChange = Date MDY( 6, 1, 1980 );
Eval(
	Eval Expr(
		colCondition = dt << New Column( “Condition”,
			character,
			numinal,
			formula( If( :name( "month/Year" ) < Expr( varProcessChange ), "Before", "After" ) )
		)
	)
);
Jim

View solution in original post

2 REPLIES 2
txnelson
Super User

Re: Labeling rows as greater/less than a date with JSL

Here is a script that is very similar to what you want to do

Names Default To Here( 1 );
dt = open("$SAMPLE_DATA\Time Series\Raleigh Temps.jmp");
varProcessChange = Date MDY( 6, 1, 1980 );
Eval(
	Eval Expr(
		colCondition = dt << New Column( “Condition”,
			character,
			numinal,
			formula( If( :name( "month/Year" ) < Expr( varProcessChange ), "Before", "After" ) )
		)
	)
);
Jim
jamiesupica0
Level II

Re: Labeling rows as greater/less than a date with JSL

Thanks so much, that did the trick!

Recommended Articles