Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- JMP User Community
- :
- Discussions
- :
- Re: Peak integration features in JMP

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Jan 26, 2016 6:28 AM
(6142 views)

Hi

Is there any peak detection features for time series in JMP? With tools like peak integration, baseline optimisation, etc. ?

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions

Highlighted

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Depending on the depth and breadth of your specific requirements, JMP has many of the building blocks that you might need. For example, the following code generates some random data and shows how to fit two Gaussians (using 'Analyse > Distribution'). Do 'File > New > New Script', copy and paste the code into the window that appears, then do 'Edit > Run Script'):

NamesDefaultToHere**(****1****)**;

// Make some data with two peaks . . .

n1 = **500**; mu1 = **0**; sig1 = **1**;

n2 = **500**; mu2 = **2**; sig2 = **2**;

peak1 = J**(**n1, **1**, RandomNormal**(**mu1, sig1**))**;

peak2 = J**(**n2, **1**, RandomNormal**(**mu2, sig2**))**;

peaks = VConcat**(**peak1, peak2**)**;

dt = NewTable**(**"Peaks", NewColumn**(**"Y", Numeric, Continuous, Values**(**peaks**)))**;

// Use 'Normal Mixtures' in 'Distribution' to fit

dt << **Distribution****(**Continuous Distribution**(** Column**(** :Y **)**, Fit Distribution**(** Normal Mixtures**(** Clusters**(** **2** **)** **)** **)))**;

But you probably want to fit a mixture of Lorentzians, in which case you will need 'Analyse > Modeling > Nonlinear' (see, for example: https://www.jmp.com/about/events/summit2013/resources/Paper_Susan_Walsh.pdf to get started with this).

However, remember that JMP is 'all purpose' statistical software: If you want the full range of capabilities that more niche software provides for dealing with spectral data, you would have some work to do, and require some knowledge to do it.

6 REPLIES 6

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Peak integration features in JMP

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Peak integration features in JMP

Highlighted

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Depending on the depth and breadth of your specific requirements, JMP has many of the building blocks that you might need. For example, the following code generates some random data and shows how to fit two Gaussians (using 'Analyse > Distribution'). Do 'File > New > New Script', copy and paste the code into the window that appears, then do 'Edit > Run Script'):

NamesDefaultToHere**(****1****)**;

// Make some data with two peaks . . .

n1 = **500**; mu1 = **0**; sig1 = **1**;

n2 = **500**; mu2 = **2**; sig2 = **2**;

peak1 = J**(**n1, **1**, RandomNormal**(**mu1, sig1**))**;

peak2 = J**(**n2, **1**, RandomNormal**(**mu2, sig2**))**;

peaks = VConcat**(**peak1, peak2**)**;

dt = NewTable**(**"Peaks", NewColumn**(**"Y", Numeric, Continuous, Values**(**peaks**)))**;

// Use 'Normal Mixtures' in 'Distribution' to fit

dt << **Distribution****(**Continuous Distribution**(** Column**(** :Y **)**, Fit Distribution**(** Normal Mixtures**(** Clusters**(** **2** **)** **)** **)))**;

But you probably want to fit a mixture of Lorentzians, in which case you will need 'Analyse > Modeling > Nonlinear' (see, for example: https://www.jmp.com/about/events/summit2013/resources/Paper_Susan_Walsh.pdf to get started with this).

However, remember that JMP is 'all purpose' statistical software: If you want the full range of capabilities that more niche software provides for dealing with spectral data, you would have some work to do, and require some knowledge to do it.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Peak integration features in JMP

Hi Ian,

Thank you for the kind suggestions. I would not have thought that numerically integrating a plot (which requires some baseline modelling) or calculating some local optima would be niche but maybe it does not fit the initial intent of JMP. I agree that these functions can be scripted - integration is 'just' a sum of lozenges - but if I could avoid reinventing the wheel...

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Peak integration features in JMP

In making my comments about 'niche software', I had in mind something like http://www.sigmaplot.co.uk/products/peakfit/peakfit.php.

As I also said, though, how JMP stacks up against your requirements ultimately depends on the depth and breadth of the latter (and also who else in your workgroup, if anyone, needs to do what you want to do). I have some code to do simple peak areas if you want to mail me at an.cox@jmp.com. If what you want is simple, I would be happy to make an add-in for the file exchange (but I can't promise to do that right away).

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Peak integration features in JMP