Operation

Set

Applies to:  Numeric Dataset, Numeric Map, Numeric Variable and Region Dataset
Returns: Numeric Dataset, Numeric Map, Numeric Variable or Region Dataset   (The type of the returned object will depend on the source object)

Description

The "set" operation is an assignment operator which can be used to set the value of a numeric data object to a new specified value. For Numeric Datasets the operation will be applied to all positions in the sequences, and for Numeric Maps it will be applied to all entries in the map (including the "default" value). The operation can also be applied to Region Datasets to set the value of numeric properties or text properties. By default the operation will be applied to the "score" property of the regions unless a different property is specified.

Arguments

NameDescription
property Specifies which property of the data object to assign the value to. For Numeric Datasets, Numeric Maps and Numeric Variables this will simply be the "value", but for Region Datasets you can select which property of the regions to assign to (the default is "score"). Note that user-defined region properties will not be shown in the drop-down list in the operation dialog, but it is still possible to type in the name other properties.
value Specifies the new value for the assignment. If the value is a literal number or a Numeric Variable, each potential value in the source object will be set to this same value. If the source object is a Numeric Dataset and the "value" is also a Numeric Dataset, the value of each position in the source will be set to the value in the same position in the "value" dataset. If the source is a Numeric Dataset and the "value" is a Sequence Numeric Map, the values of all positions in each sequence are set to the value for that sequence in the map (so each sequence is potentially assigned different values). If both the source and "value" are Numeric Maps of the same type, the entries in the source map will be set to the corresponding values in the "value" map. If the source is a Region Dataset and the "value" is a Numeric Dataset, the region property can be set to a value derived from the values in the Numeric Dataset which are covered by the region. This value could be e.g. the minimum, maximum, average, median or sum of all values within the region or it could be the value of a single position at the center, start or end of the region ("start" and "end" refers to the lowest and highest genomic coordinates of the region with respect to the direct strand. The "relativeStart" and "relativeEnd" positions refer to the most upstream and most downstream position in the region when viewed relative to the orientation of the sequence, and the "regionStart" and "regionEnd" values refer to the most upstream and most downstream positions relative to the orientation of the region itself). If the region is a "motif" region, it is also possible to use "weighted average" or "weighted sum" where the values in each position are weighted by the information content of the motif in the corresponding position. If the operation is applied to a "text" property of a Region Dataset, the "value" should either be a literal string enclosed in parentheses or a Text Variable. The text property will then be set to the provided text (multiple values will be comma separated).

Conditions: position condition or region condition

Examples


# Assigns the data object X the value 10. If X is a Numeric Dataset/Numeric Map/Region Dataset, all positions/entries/regions in the data object will be set to 10.
set X to 10

# Returns a new track where each position contains the highest value in that position between the two tracks
newNumericTrack = set Track1 to Track2 where Track2 > Track1

# Copies the contents of Map2 into Map2
set Map1 to Map2

# Sets the 'score' property of each region in the track to the average value of the NumericTrack within the region
set RegionTrack[score] to average NumericTrack

# Assigns the value 'one,two,three' to the text-property 'numbers' for all regions in the track
set RegionTrack[numbers] to "one,two,three"


See Also: increase, decrease, multiply, divide