cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Try the Materials Informatics Toolkit, which is designed to easily handle SMILES data. This and other helpful add-ins are available in the JMP® Marketplace
Choose Language Hide Translation Bar
Samboat
Level I

Spatial zoning of a large

Can some help me with how to demarcate a plot of the field containing about 3500 data points into 24 different zones? Using Binning formula might be a great idea but I am not seeing any webinar on this.

2 ACCEPTED SOLUTIONS

Accepted Solutions
Craige_Hales
Super User

Re: Spatial zoning of a large

select the column by clicking on the header, then Cols->Utilities->make binning formula.

You might also want to look at the hierarchical clustering platform; you can ask it to make 24 clusters.

Craige

View solution in original post

txnelson
Super User

Re: Spatial zoning of a large

Here is one formula that will work.  

If( Row() == 1,
	incr = (Col Max( :Your Column Name ) - Col Min( :Your Column Name )) / 24
);
value = Floor( (:Your Column Name - Col Min( :Your Column Name )) / incr ) + 1;
If( value > 24, value = 24 );
value;
Jim

View solution in original post

8 REPLIES 8
Craige_Hales
Super User

Re: Spatial zoning of a large

select the column by clicking on the header, then Cols->Utilities->make binning formula.

You might also want to look at the hierarchical clustering platform; you can ask it to make 24 clusters.

Craige
Samboat
Level I

Re: Spatial zoning of a large

Thanks for responding. Is it possible to direct to a webinar on this or a short video explaining this?

txnelson
Super User

Re: Spatial zoning of a large

Here is one formula that will work.  

If( Row() == 1,
	incr = (Col Max( :Your Column Name ) - Col Min( :Your Column Name )) / 24
);
value = Floor( (:Your Column Name - Col Min( :Your Column Name )) / incr ) + 1;
If( value > 24, value = 24 );
value;
Jim
Samboat
Level I

Re: Spatial zoning of a large

Thanks for responding, please is it possible to direct me to a short a video or a webinar explaining this. 

Craige_Hales
Super User

Re: Spatial zoning of a large

google found

https://community.jmp.com/t5/Short-Videos/Binning-Data-Using-Conditional-IF-THEN-Statements/ta-p/271...

which might be helpful, describing a third variation.

 

You might want to read up on column formulas in data tables, perhaps here

https://community.jmp.com/t5/Mastering-JMP-Videos-and-Files/Using-Formulas-to-Get-the-Most-from-Your...

 

Craige
txnelson
Super User

Re: Spatial zoning of a large

@Samboat 

@Craige_Hales specified links are valuable.  Please take the time to study them.  Also, you need to take the time to study the JMP Scripting Guide.  It can be found in the JMP Documentation Library available under the Help pull down menu

Here is my attempt at documenting the formula

// JMP formulas have a couple of automatic features that are taken 
// advantage of in this application
//     1. The formula code is applied automatically to each row in
//        the data table
//     2. What is passed to the output column as the resulting value
//        is the last item processed.  In this case, the variable 
//        named "value"

// The bins that are going to be created are calculated by dividing the 
// maximum value in the target column minus the minimum value in the target
// column, by 24.  This will give the size of each of the bins.  But since
// JMP formulas are run on each row, the calculation of items that only need
// to be calculated once are more efficiently isolated by just having them
// calculated when the formula for row 1 is run
If( Row() == 1,
	incr = (Col Max( :Your Column Name ) - Col Min( :Your Column Name )) / 24
);

// The variable "value", is an arbitrary variable, that is going to be used to 
// hold the calculation of the bin
// To calculate the bin is a simple matter of subtracting the minimum value from the 
// current rows value and then dividing by the calculated bin size(incr);  Taking
// the Floor() of the calculation, just trims off the decimal placed.
value = Floor( (:Your Column Name - Col Min( :Your Column Name )) / incr ) + 1;

// Using the above binning technique, will always set any row values that are 
// equal to the column's maximum value to a bin that is one bin value above the
// maximum number of bins desired. so the simple IF() statemet moves those values
// into the highest bin
If( value > 24, value = 24 );

// As mentioned above, the variable named "value" has been used to hold the calculated
// bin value.  It is this value that is what is wanted for the value of the column
// the calculating.  By specifying it as the last item processed, it ensures it will
// be the item used to populate the rows value.
value;
Jim
Samboat
Level I

Re: Spatial zoning of a large

Thank you Sir
Samboat
Level I

Re: Spatial zoning of a large

Thank you, Sir