          Create a virtual column.

create_virtual_column(source, colname, cptnames, transform)

Argument
Description
source
The CrateData object containing the data to which the transform will be applied.
colname
The name of the virtual column.
cptnames
A list of the component names, if the source is a vector column (the number of names should match), otherwise None.
transform
The transform used to create the virtual column values. It must be one of the support pytransform types: LINEARTransform, LINEAR2DTransform, or WCSTANTransform.

The create_virtual_column command creates a virtual column; that is a column whose values are calculated by applying a transform to an existing column. It can create single or vector columns. See also the create_vector_column command.

>>> cr = TABLECrate()
>>> tf = CrateData()
>>> tf.name = 'Tf'
>>> tf.unit = 'deg F'
>>> tf.desc = 'Simulated temperature'
>>> tf.values = np.random.normal(60.1, 12.2, size=10)
>>> from pytransform import LINEARTransform
>>> tr = LINEARTransform()
>>> tr.get_parameter('SCALE').set_value(5/9.0)
>>> tr.get_parameter('OFFSET').set_value(-5*32/9.0)
>>> tc = create_virtual_component(tf, 'Tc', None, tr)
>>> tc.unit = 'deg C'
>>> cr.add_column(tf)
>>> cr.add_column(tc)
>>> cr.write('tbl.fits')

This example shows how to create a 10-row file with a 'Tf' column - in degrees Farenheit - and an associated virtual column 'Tc', in degrees Centigrade. For example:

>>> print(tf.values[0:5]) [ 70.37663997 68.14952196 40.58894648 65.96498007 56.25287882] >>> print(tc.values[0:5]) [ 21.32035554 20.08306776 4.77163694 18.86943337 13.47382157]

See the bug pages on the CIAO website for an up-to-date listing of known bugs.

December 2015