Question about masking data

I am using a multidimentional wave where there is 1 wave and 80 columns. because of this, i cannot use Analysis --> Curve Fitting --> Data Options, masking.

Is there anyway to write a line into a procedure where I would be able to mask all values greater than 10,000 within one specific wave (say Wave0[3])?

Thanks,
BH
hedgesbk wrote:
I am using a multidimentional wave where there is 1 wave and 80 columns. because of this, i cannot use Analysis --> Curve Fitting --> Data Options, masking.


Are you fitting, for instance, one column from the 80-column matrix? The Curve Fit dialog doesn't support that at all, but on the command line (and consequently, in procedures) you can use subranges to extract any subrange for any purpose. So you can use something like
FuncFit ... M90[][0] /X=M80[][1]/M=M80[2]

Here I am extracting one column from a matrix wave called M80 for each place in the fit command where a wave is needed.

If you are doing a multivariate fit, and you have a mask wave of the same size and shape, you should be able to select your mask wave in the Curve Fit dialog.
Quote:

Is there anyway to write a line into a procedure where I would be able to mask all values greater than 10,000 within one specific wave (say Wave0[3])?

Do you mean "one specific column"? So if Wave0 is your 80-column matrix, and you want to use column 3 to mask out all values above 10000, you might write this (assume your Y data is stored in column 0):
Wave wave0
wave0[][3] = wave0[p][0] < 10000
FuncFit ... /M=wave0[][3]

John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
hedgesbk wrote:

Is there anyway to write a line into a procedure where I would be able to mask all values greater than 10,000 within one specific wave (say Wave0[3])?


You could loop over the original wave as part of the procedure and
write all values that fulfil your criterion into the new 1d-wave.
However that takes two for-loops and may may take a long time.
Not the most elegant way and but it works.


This may not be the best place for posting this: However, I would greatly appreciate the possibility to use a mask wave for 1d and multi-dim waves in conjunction with a wider range of commands than currently possible, such as display or appendtograph. I know that display works with ranges, but that's not always feasible.
johnweeks wrote:
...So you can use something like
FuncFit ... M90[][0] /X=M80[][1]/M=M80[2]

Here I am extracting one column from a matrix wave called M80 for each place in the fit command where a wave is needed.


I think you might mean ...

FuncFit ... M90[][0] /X=M80[][1]/M=M80[][2]


Note the additional [] in the /M=... flag.

--
J. J. Weimer
Chemistry / Chemical & Materials Engineering, UAHuntsville