Skip to content

convert_units

laktory.spark.functions.convert_units ยค

convert_units(x, input_unit, output_unit)

Units conversion

PARAMETER DESCRIPTION
x

Input column

TYPE: COLUMN_OR_NAME

input_unit

Input units

TYPE: str

output_unit

Output units

TYPE: str

RETURNS DESCRIPTION
Column

Output column

Examples:

import laktory  # noqa: F401
import pyspark.sql.functions as F

df = spark.createDataFrame([[1.0]], ["x"])
df = df.withColumn("y", F.laktory.convert_units("x", input_unit="m", output_unit="ft"))
print(df.laktory.show_string())
'''
+---+-----------------+
|  x|                y|
+---+-----------------+
|1.0|3.280839895013124|
+---+-----------------+
'''
References

The units conversion function use planck convert as a backend.

Source code in laktory/spark/functions/units.py
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
def convert_units(
    x: COLUMN_OR_NAME,
    input_unit: str,
    output_unit: str,
) -> Column:
    """
    Units conversion

    Parameters
    ----------
    x:
        Input column
    input_unit:
        Input units
    output_unit:
        Output units

    Returns
    -------
    :
        Output column

    Examples
    --------
    ```py
    import laktory  # noqa: F401
    import pyspark.sql.functions as F

    df = spark.createDataFrame([[1.0]], ["x"])
    df = df.withColumn("y", F.laktory.convert_units("x", input_unit="m", output_unit="ft"))
    print(df.laktory.show_string())
    '''
    +---+-----------------+
    |  x|                y|
    +---+-----------------+
    |1.0|3.280839895013124|
    +---+-----------------+
    '''
    ```

    References
    ----------
    The units conversion function use [planck](https://www.okube.ai/planck/) convert as a backend.
    """
    return units.convert(_col(x), input_unit, output_unit)