PFChrom v5 Documentation Contents AIST Software Home AIST Software Support

Transform Data

This is PFChrom's transform preprocessing option, used to alter the data using user-entered calculations.
This option is only available from the topmost data level. This procedure is accessed via the **Transform
Data** button in the main data window or the **Transform Data** item in the main Data
menu.

You can also use the **Transform Data** icon in the main program toolbar.

For transforming just one data set when many are present, from the main window right click the data set
of interest and select **Apply Transform to this Data Set** from the popup menu.

A transform consists of mathematical equations used to transform one or more of the variables within the data sets. In a transform, the X or Y data table values are treated as vectors and simply referenced as X or Y.

Common X Transforms

Seconds to Minutes

Select this option to automatically enter the **X=X/60** transform to convert the X-scale from seconds
to minutes.

Minutes to Seconds

Select this option to automatically enter the **X=X*60** transform to convert the X-scale from minutes
to seconds.

Dead-Time Adjustment for Thermodynamic Capacity Factor

Select this option to automatically enter the **X=X/**dt**-1** transform to convert the X-scale
to retention units, where dt is the column dead time value. You must enter the **Column Dead Time**
value in this field for this transform to appear. This dead-time value is saved across sessions.

Common Y Transforms

Normalize for Unit Area, Xmin to Xmax

Select this option to automatically enter the **Y=Y/AREA** transform to convert the Y-data to unit
area. The AREA data table constant will contain the discrete area for each data set that is being transformed.

Zero All Negative Y values

Select this option to automatically enter the **Y=IF(Y<0,0,Y)** transform to zero all negative Y-data
values.

First Order Difference, dY

Select this option to automatically enter the **Y=Y-YLAG(1)** transform to difference the Y data.

First Order Derivative By Difference, dY/dX

Select this option to automatically enter the **Y=IF((X-XLAG(1))>0,(Y-YLAG(1))/(X-XLAG(1)),0)**
transform to generate first derivative data.

Cumulative of Y Values

Select this option to automatically enter the **Y=YCUMULATIVE** transform to generate the discrete
cumulative of the data. The YCUMULATIVE is a function with no parameters that processes the current implied
X-data value and generates a cumulative.

Change Sign of Y values

Select this option to automatically enter the **Y=-Y** transform to change the sign of the data. You
will need to use this option if the raw data consists of inverted peaks.

X and Y Custom Transforms

PFChrom's full parser for user-defined peaks is available for custom transforms. You can use any supported function which is available at the time of the transform. For example, the data constants will have been evaluated, but nothing of specific peak properties. You can thus enter a transform such as Y=Y+GNoise(1) to add 1% random Gaussian noise to a data set in order to see how well a model holds up when this level of white noise is present in the signal.

This is also one of many ways to generate pure test data. For example, the Y=GenHVL(x,1,3,.25,.05,.1) will generate a generalized HVL peak of the given parameters using the X-values in the current data set.

Only one expression, X= or Y=, need be used in the overall transform. These X= and Y= prefixes are automatically supplied. If you enter both X and Y transforms and there are cross references to X and Y in the X= and Y= expressions, bear in mind that the X= transform will be applied first, in full, and only then will the Y= expression be applied.

The weights calculation is not presently used.

Parser Function Help

There are two dropdowns. The first lists the class of function, and the second lists the specific function
in that class. The default **All Constants, Variables, and Functions** lists everything in the parser.
The **Insert** Button will automatically place the function, with any parameter list, in the Y field.

Copy, Cut, Paste

Use these buttons to move expressions to and from the clipboard, or to modify the text across the various fields.

Read

Transforms that have been saved to disk are imported by using the **Read** button. It is a good idea
to save a transform that will likely be used on future data sets. Transform files have [CLC] extensions.
These should be created only within the program.

Save

You must explicitly save a calculation to disk using the **Save** button in order to have it available
in a future session.

Validation

The calculation will be validated when you exit the Transform Data entry screen. If there is an error in any of the expressions, an error message will report a specific parser or math error and you will be shown where within the expression the evaluation failed. The cursor will also be placed at this position. Note that a transform must be defined at the Xmean and/or Ymean of the data table. Transforms are compiled for a very rapid processing with large data sets.

Option to Apply

When you click **OK**, you will be presented with a PFChrom
Graph of the transformed data. Click **Accept** to create a new data level in the program containing
the transformed data. Click **Cancel** if you wish to exit the transform procedure without altering
the state of the data.

Multiple Data Sets

If you have multiple data sets present, all will be shown in the graphical confirmation step, and the transform will apply to each, irrespective of whether or not a data set is selected. The data set selection in the main screen applies only to the View and Compare Data options and the Local Maxima Peaks, Hidden Peaks - Residuals, and the Hidden Peaks - Second Derivative fitting options.

When the **Accept** is selected, all of the data sets will be preprocessed with the transform(s) specified.

To graphically evaluate a transform more closely, you may double click that graph or right click and select
the **Plot This Data Set** option from the popup menu. When you then click **OK**, double click
this single graph, or right click and select **Plot All Data Sets** from the popup menu, all of the
transformed data sets will again be shown.

Transforming only a Single Data Set

In order to transform an individual data set, do not invoke this **Transform Data** option from the
main menu or the main window's dialog button. Instead, from the main window, and from the topmost data
level, right click the data set of interest and select **Apply Transform to this Data Set** from the
popup menu. After performing a local transform, a warning will be given that the pre-transformed data
will be overwritten (no new data level is created). If you import five data sets, for example, and one
of these was run with seconds units instead of minutes, you should use this individual transform option
to convert this disparate data set to the same scale as the others.