POW Function

Computes the value of the first argument raised to the value of the second argument. Each argument can be a Decimal or Integer literal or a reference to a column containing numeric values.

Basic Usage

Numeric literal example:

derive value: POW(10,3 )

Output: Generates a column containing the value of 10 3, which is 1000.

Column reference example:

derive value: POW(MyValue,2) as: 'sqred_MyValue'

Output: Generates the new sqred_myValue column containing the value of the MyValue column raised to the power of 2 (squared).

Syntax

derive value: POW(base_numeric_value, exp_numeric_value)

ArgumentRequired?Data TypeDescription
base_numeric_valueYstring, decimal, or integerName of column or Decimal or Integer literal that is the base value to be raised to the power of the second argument
exp_numeric_valueYstring, decimal, or integerName of column or Decimal or Integer literal that is the power to which to raise the base value

For more information on syntax standards, see Language Documentation Syntax Notes.

base_numeric_value

Name of the column or numeric literal whose values are used as the bases for the exponential computation.

  • Missing input values generate missing results.
  • Literal numeric values should not be quoted.
  • Multiple columns and wildcards are not supported.

Usage Notes:

Required?Data TypeExample Value
YesString (column reference) or Integer or Decimal literal2.3

exp_numeric_value

Name of the column or numeric literal whose values are used as the power to which the base-numeric value is raised.

  • Missing input values generate missing results.
  • Literal numeric values should not be quoted.
  • Multiple columns and wildcards are not supported.

Usage Notes:

Required?Data TypeExample Value
YesString (column reference) or Integer or Decimal literal5

Examples

Example - Exponential functions

The following example demonstrates how the exponential functions work together. These functions include the following:

Source:

rowNumX
1-2
21
30
41
52
63
74
85

Transform:

derive value: EXP (X) as: 'expX'

derive value: LN (expX) as: 'ln_expX'

derive value: LOG (X) as: 'logX'

derive value: POW (10,logX) as: 'pow_logX'


Results:

In the following, (null value) indicates that a null value is generated for the computation.

rowNumXexpXln_expXlogXpow_logX
1-20.1353352832366127-2(null value)(null value)
2-10.1353352832366127-0.9999999999999998(null value)(null value)
3010(null value)0
412.718281828459045101
527.389056098930649520.301029995663981141.9999999999999998
6320.08553692318766830.477121254719662443
7454.5981500331442340.60205999132796233.999999999999999
85148.4131591025765750.69897000433601874.999999999999999

Example - Pythagorean Theorem

The following example demonstrates how the POW and SQRT functions work together to compute the hypotenuse of a right triangle using the Pythagorean theorem.

  • POW - X Y . In this case, 10 to the power of the previous one. See POW Function .
  • SQRT - computes the square root of the input value. See SQRT Function.

The Pythagorean theorem states that in a right triangle the length of each side (x,y) and of the hypotenuse (z) can be represented as the following:

z2 = x 2 + y 2

Therefore, the length of z can be expressed as the following:

z = sqrt(x 2 + y 2 )


Source:

The dataset below contains values for x and y:

XY
34
49
810
3040

Transform:

You can use the following transform to generate values for z2.

NOTE: Do not add this step to your recipe right now.

derive value:(POW(x,2) + POW(y,2)) as:'Z'

You can see how column Z is generated as the sum of squares of the other two columns. Now, wrap the value computation in a SQRT function:

derive value:SQRT((POW(x,2) + POW(y,2))) as: 'Z'

Results:

XYZ
345
499.848857801796104
81012.806248474865697
304050

Was this page helpful? Let us know how we did:

Send feedback about...

Google Cloud Dataprep Documentation