cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Choose Language Hide Translation Bar
kluu
Level I

Calculate difference between 2 group

Hi Everyone,

I am new with jmp.  I have a data table like the below:

index Team value

1        a        5

2        a        12

3        a        20

4        b        5

5        b        22

6        b        6

 

I want to create a new column, "delta", that calculate the differences between the index group by "team", so i would have something like this:

 

index Team value delta

1        a        5        .   

2        a        12      .

3        a        20      .

4        b        5        0

5        b        22      -10

6        b        6        14

 

Could you help with the jsl column formula?

Thanks

Khanh

1 ACCEPTED SOLUTION

Accepted Solutions
txnelson
Super User

Re: Calculate difference between 2 group

Here is a formula that works for your example table.

If( Row() == 1,
	startTeam = :Team;
	theList = {};
	theDelta = .;
);
If( :Team == startTeam,
	Insert Into( theList, :value ),
	If( :Team != Lag( :Team ),
		count = 0
	);
	count++;
	theDelta = theList[count] - :value;
);
theDelta;
Jim

View solution in original post

2 REPLIES 2
txnelson
Super User

Re: Calculate difference between 2 group

Here is a formula that works for your example table.

If( Row() == 1,
	startTeam = :Team;
	theList = {};
	theDelta = .;
);
If( :Team == startTeam,
	Insert Into( theList, :value ),
	If( :Team != Lag( :Team ),
		count = 0
	);
	count++;
	theDelta = theList[count] - :value;
);
theDelta;
Jim
kluu
Level I

Re: Calculate difference between 2 group

Thank you Jim.  It works