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.
  • Image to Table JMP extension imports single or batch images as data tables. Useful to extract curves from pictures or convert image data to curve data to use in analyses like Functional Data Explorer. Download and install the extension.

Discussions

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

helpful Custom Functions

You know a cool trick / helpful gimmick?

-> please share with us : )

 

[More Topic Containers like this]

2 REPLIES 2
hogi
Level XIII

Re: Custom Functions

InFormat doesn't understand Timezone information like +01:00 : (

In Format("2025-01-01T00:00+01:00") // -> .

use this Workaround:

Add Custom Functions(
	New Custom Function(
		"custom",
		"TimeZone_to_Time",
		Function( {col_a},
      {Default Local}, 
				Informat( Word( 1, col_a, "+" ), Empty() )
		+In Hours( Num( Word( 1, Word( 2, col_a, "+" ), ":" ) ) )
),
		<<Formula Category( "Date Time" ),
		<<Transform Category( 1 ),
		<<Description( "takes a Date (String) with Timezone information and converts it to a number \!n works as well as column transform -- please change the format manually" ),
		<<Example(Expr(
		b = date time:TimeZone_to_Time("2025-01-01T00:00+01:00");
			)
		)
	)
);

The disadvantage:
When you use the formula via right click / new formula column, the column will show the date in seconds - instead of 2025-01-01T00:00
... seems that you have to adjust the format manually.

hogi
Level XIII

Re: Custom Functions

Add Custom Functions(
	New Custom Function(
		"hogi",
		"replace head",
		Function( {orig, new Head},
			{Default Local},
			mydummy = Expr( dummy() );
			For Each( {arg}, Name Expr( orig ), Insert Into( mydummy, arg ) );
	
			( Substitute( Name Expr( mydummy ), Expr( dummy() ), Name Expr( new Head ) ) );
		),
		<< description("takes the first argument and replaces its head with the second argument"),
		<< example(Expr(
			hogi:replace head({1,2,{3,4}}, Expr(Show()));
			
			orig = Expr(Max(1,2,3));
			hogi:replace head(Name Expr(orig), Expr(Show()));			
		))
	)
);

Recommended Articles