IsEven 類別 - AWS Glue

IsEven 類別

IsEven 轉換會在新資料欄中傳回布林值,指示來源資料欄或值是否為偶數。如果來源資料欄或值為小數,則結果為 false。

範例

from pyspark.context import SparkContext from pyspark.sql import SparkSession from awsgluedi.transforms import * sc = SparkContext() spark = SparkSession(sc) input_df = spark.createDataFrame( [(5,), (0,), (-1,), (2,), (None,)], ["source_column"], ) try: df_output = math_functions.IsEven.apply( data_frame=input_df, spark_context=sc, source_column="source_column", target_column="target_column", value=None, true_string="Even", false_string="Not even", ) df_output.show() except: print("Unexpected Error happened ") raise

輸出

輸出將是:

``` +------------+------------+ |source_column|target_column| +------------+------------+ | 5| Not even| | 0| Even| | -1| Not even| | 2| Even| | null| null| +------------+------------+ ```

IsEven 轉換會將 `source_column` 作為 "source_column",並將 `target_column` 作為 "target_column"。其會檢查 `"source_column"` 中的值是否為偶數。如果值為偶數,則會將 `"target_column"` 值設定為 `true_string` "Even"。如果值為奇數,則會將 `"target_column"` 值設定為 `false_string` "Not even"。如果 `"source_column"` 值為 `null`,`"target_column"` 值會設定為 `null`。

轉換會正確識別偶數 (0 和 2),並將 `"target_column"` 值設定為 "Even"。對於奇數 (5 和 -1),其會將 `"target_column"` 值設定為 "Not even"。對於 `"source_column"` 中的 `null` 值,`"target_column"` 值設定為 `null`。

方法

__call__(spark_context, data_frame, target_column, source_column=None, true_string=DEFAULT_TRUE_STRING, false_string=DEFAULT_FALSE_STRING, value=None)

IsEven 轉換會在新資料欄中傳回布林值,指示來源資料欄或值是否為偶數。如果來源資料欄或值為小數,則結果為 false。

  • source_column – 現有資料欄的名稱。

  • target_column – 要建立的新資料欄的名稱。

  • true_string – 指示值是否為偶數的字串。

  • false_string – 指示值是否為非偶數的字串。

apply(cls, *args, **kwargs)

繼承自 GlueTransform apply

name(cls)

繼承自 GlueTransform name

describeArgs(cls)

繼承自 GlueTransform describeArgs

describeReturn(cls)

繼承自 GlueTransform describeReturn

describeTransform(cls)

繼承自 GlueTransform describeTransform

describeErrors(cls)

繼承自 GlueTransform describeErrors

describe(cls)

繼承自 GlueTransform describe