cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Discussions

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

Sharing Parameters with constraints for 4PL analysis

Hi,

 

l am trying to replicate someone else's 4 parameter logistic regression work done in GraphPad where they have the ability to share the upper and lower asymptote and can constrain the slope, can anyone provide some reading that l can follow so l can achieve the same in JMP??

 

Thanks,

Mick.

3 ACCEPTED SOLUTIONS

Accepted Solutions

Re: Sharing Parameters with constraints for 4PL analysis

Hi @Mickyboy ,

I have an example here where I have cell growth that I want to fit a 4PL model towards (and may already know the asymptote or slope values)

Ben_BarrIngh_0-1746103849103.png

 

Go to Analyze>Specialized Modelling > Non Linear, on the window that opens click ‘Model Library’ and select Logistic 4P and hit ‘Make Formula’. As you can see in the formula in the screenshot, the theta terms represent the terms in the 4PL regression, with:

Theta1 – Lower asymptote

Theta2 – Upper asymptote

Theta3 – Slope of the curve/growth rate

Theta4 – Inflection point

Ben_BarrIngh_1-1746103849108.png

 

You will need to define the X and Y parameters that you are using (in the photo below I’ve Optical density and time, there is also a ‘Group’ option if you have multiple groups with different slopes that you want to estimate parameter values for).

Ben_BarrIngh_2-1746103849110.png

 

That is going to open up a window for you to input your parameter values or to use a slider tool to start off the parameter estimates – this is where you can add the estimate values that you have got from Graphpad.

Ben_BarrIngh_3-1746103849112.png

 

 

 

 

 

 

 

 

Once you’ve put in the values you can hit ‘Make Formula’ and it will create a formula column in your data table

Ben_BarrIngh_4-1746103849115.png

 

If you want to take this further, go back to the Non-Linear platform, put the formula into the Predictor Formula and your Y into the Y role and then you can use the Non-linear platform to refine the parameter estimates to improve the fit.

Ben_BarrIngh_5-1746103849119.png

 

There's more information on the Non-linear platform here.

 

Hope that helps!

Thanks,

Ben

“All models are wrong, but some are useful”

View solution in original post

Byron_JMP
Staff

Re: Sharing Parameters with constraints for 4PL analysis

Byron_JMP_0-1746105290611.png

 

JMP Systems Engineer, Health and Life Sciences (Pharma)

View solution in original post

Byron_JMP
Staff

Re: Sharing Parameters with constraints for 4PL analysis

Usually when someone asks about constraining the slope, the next question is about relative potency.  

If that happens to be where you're going, there is an option called "Test Parallelism" that calculates relative potency for you

 

JMP Systems Engineer, Health and Life Sciences (Pharma)

View solution in original post

9 REPLIES 9

Re: Sharing Parameters with constraints for 4PL analysis

Hi @Mickyboy ,

I have an example here where I have cell growth that I want to fit a 4PL model towards (and may already know the asymptote or slope values)

Ben_BarrIngh_0-1746103849103.png

 

Go to Analyze>Specialized Modelling > Non Linear, on the window that opens click ‘Model Library’ and select Logistic 4P and hit ‘Make Formula’. As you can see in the formula in the screenshot, the theta terms represent the terms in the 4PL regression, with:

Theta1 – Lower asymptote

Theta2 – Upper asymptote

Theta3 – Slope of the curve/growth rate

Theta4 – Inflection point

Ben_BarrIngh_1-1746103849108.png

 

You will need to define the X and Y parameters that you are using (in the photo below I’ve Optical density and time, there is also a ‘Group’ option if you have multiple groups with different slopes that you want to estimate parameter values for).

Ben_BarrIngh_2-1746103849110.png

 

That is going to open up a window for you to input your parameter values or to use a slider tool to start off the parameter estimates – this is where you can add the estimate values that you have got from Graphpad.

Ben_BarrIngh_3-1746103849112.png

 

 

 

 

 

 

 

 

Once you’ve put in the values you can hit ‘Make Formula’ and it will create a formula column in your data table

Ben_BarrIngh_4-1746103849115.png

 

If you want to take this further, go back to the Non-Linear platform, put the formula into the Predictor Formula and your Y into the Y role and then you can use the Non-linear platform to refine the parameter estimates to improve the fit.

Ben_BarrIngh_5-1746103849119.png

 

There's more information on the Non-linear platform here.

 

Hope that helps!

Thanks,

Ben

“All models are wrong, but some are useful”
Byron_JMP
Staff

Re: Sharing Parameters with constraints for 4PL analysis

Byron_JMP_0-1746105290611.png

 

JMP Systems Engineer, Health and Life Sciences (Pharma)
Byron_JMP
Staff

Re: Sharing Parameters with constraints for 4PL analysis

Usually when someone asks about constraining the slope, the next question is about relative potency.  

If that happens to be where you're going, there is an option called "Test Parallelism" that calculates relative potency for you

 

JMP Systems Engineer, Health and Life Sciences (Pharma)
Mickyboy
Level V

Re: Sharing Parameters with constraints for 4PL analysis

Hi Ben, 

 

Firstly, thank you very much for the detailed and excellent answer, but due to me being in a hurry and leaving it till the end of the day l thought l should expand on what the data looks like, and what l am hoping to achieve, and what my colleagues in the States have done, unfortunately due to privacy issues l cant share the data.

 

We have a dataset, from a Luminex immunoassay, where 1 plate has a standard with 8 3.5-fold dilutions, and 5 samples with 7 3.5-fold dilutions, so each plate there are 86 data points, we have 59 plates overall, the last plate is not full, so overall we have 5032 data points. What they have done in GraphPad is shared the upper asymptote of 266,900, the lower asymptote as 0, and constrained the slope to 1, then let the model calculate the D50 for each sample. The D50 is to be considered the end point titer from which we will do further calculations such as the proportion of the samples that have sero converted etc, does this make sense, do you want me to expand on anything??

 

I would also like do some comparison of models, such as an unconstrained model, or sharing less parameters etc. 

 

What l would like to do is do the same in JMP, which l don't think the above will solve for me, but that's my fault, l should have been more descriptive. Any advice would be greatly appreciated.

 

Thanks Mick.

 

 

Re: Sharing Parameters with constraints for 4PL analysis

Hi @Mickyboy ,

 

Sure, in that case you can still use the non-linear platform, in that case I’m using the ‘Bioassay’ sample data you can find in the Help > Sample Index.

 

Keep doing all the same first steps to put the model together in the model Library of the non-linear platform – to distinguish the groupings (ie standards and samples) you can use the ‘Group’ option in the Make formula part – you then need to enter the name of the comparison group you want to use.

Ben_BarrIngh_0-1746174010974.png

 

 

Ben_BarrIngh_1-1746174010975.png

 

As you can see in the sliders below, this makes it so you have a formula where you have the Log4P formula with individual parameter values with the addition of each groups Theta values.

Ben_BarrIngh_2-1746174010984.png

 

Ben_BarrIngh_3-1746174010986.png

 

This where you can choose to change whether the parameters are shared (i.e. don’t do grouping) or individualistic per sample.

When you bring the formula into the Non-linear platform you can use the ‘Lock’ option to restrict the values so that they aren’t changed when the NL platform converges. If you want the Theta1 values to all be the same, set the group values for that theta to 0.

Ben_BarrIngh_4-1746174011013.png

 

 

Then you can lock everything but the theta4 values to find the IC50 values, and then you can save the values using the Red triangle>Save estimates to table to get your values.

 

Another option without grouping in the formulas

The other option that means you don’t have the awkward separate grouping of values and can instead get one single ‘Theta’ value that is separated by grouping. In this example when you do the ‘Make Formula’ don’t put the ‘Grouping’ value in there, instead when you go to bring the formula into the NL platform, use the ‘By’ option to run the NL formula on each group individually.

 

Ben_BarrIngh_5-1746174011018.png

 

 

When the page appears, you can hold ctrl and click the ‘Go’ to run it on every parameter. As before, lock the Theta values you don’t want changing, run and then you can use ‘Make Combined Data Table’ on the parameter values to get one single table with each value.

 

Ben_BarrIngh_6-1746174011021.png

 

Ben_BarrIngh_7-1746174011028.png

 

For the last option I've put together a project file that you can look through.

 

 

Let me know if you’ve got anymore questions!

Thanks,

Ben

“All models are wrong, but some are useful”
Mickyboy
Level V

Re: Sharing Parameters with constraints for 4PL analysis

Thanks Ben, this looks right, give me a little time to go through it all, and get back to you.

 

Thanks,

Mick.

Byron_JMP
Staff

Re: Sharing Parameters with constraints for 4PL analysis

Is this kind of what your data looks like?  (table included below)

 

Byron_JMP_0-1746450997399.png

One other question. What do you do with the standard that is on each plate?

JMP Systems Engineer, Health and Life Sciences (Pharma)
Mickyboy
Level V

Re: Sharing Parameters with constraints for 4PL analysis

Mickyboy_0-1746508994056.png

A quick snip of the data, l assume, and l haven't asked the question specifically, there must have been some effect for plate hence a standard on each plate, l will check the next time l speak to the lab person

Mickyboy
Level V

Re: Sharing Parameters with constraints for 4PL analysis

Hi Ben,

 

Apologies, l had hoped to get back to you by now but i have been dragged into another project, l hope to get back to this over the next week and will let you know.

 

Thanks for your efforts,

Regards,

Mick.

Recommended Articles