Document toolboxDocument toolbox

Sign (signum)

Description

Adds a new column that returns the sign of the specified values: positive (represented as 1) or negative (represented as -1). 0 values will be represented as 0.

How does it work in the search window?

Select Create column in the search window toolbar, then select the Sign operation. You need to specify one argument:

Argument

Data type

Argument

Data type

Number mandatory

integer, float

The data type of the values in the new column is integer.


Example

The example in this article use value in a data table generated from the following CSV file.

The examples in this article use values in a data table generated from this CSV file. If you want to try the example for yourself, download the file and upload it to your domain clicking Data upload in the navigation pane. Name the new table my.upload.sample.data and select Current date as Date parsing type. Learn more about uploading data in Uploading log files.

After receiving the confirmation message, you can access the table from the Finder, selecting my → upload → sample → data. When you upload data from a file, all the information is included in a single column called message. To split the values into different columns, you can use the Split (split) operation. Click Toggle Query Editor in the search window toolbar and paste the following LINQ query to save time:

from my.upload.sample.data
select split(message, ";", 16) as numbers,
float(numbers) as numbers_float


In the my.upload.sample.data table, we want to get the sign of the values in the numbers_float column. To do it, we will create a new column using the Sign operation.

The arguments needed to create the new column are:

  • Number - numbers_float column

Click Create column and you will see the following result:

How does it work in LINQ?

Use the operator select... as...  and add the operation syntax to create the new column. This is the syntax for the Sign operation:

  • signum(number)

Example

You can copy the following LINQ script and try the above example on the my.upload.sample.data table. 

from my.upload.sample.data select split(message, ";", 16) as numbers, float(numbers) as numbers_float, signum(numbers_float) as numbers_float_sign