Synopsis
Create a virtual column.
Syntax
create_virtual_column(source, colname, cptnames, transform)
Description
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.
Example
>>> 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]
Bugs
See the bug pages on the CIAO website for an up-to-date listing of known bugs.
Refer to the CIAO bug pages for an up-to-date listing of known issues.
See Also
- crates
- add_col, add_piximg, cratedata, create_vector_column, get_col, get_colvals, get_piximg