FlagDuplicateRows 類別 - AWS Glue

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

FlagDuplicateRows 類別

FlagDuplicateRows 會傳回一個新資料欄,其中每個資料列都有一個指定的值,指示該資料列是否與資料集中較早的資料列完全相符。找到相符項目時,其會標記為重複項目。初始出現不會標記,因為其不符合較早的資料列。

範例

from pyspark.context import SparkContext from pyspark.sql import SparkSession from awsgluedi.transforms import * sc = SparkContext() spark = SparkSession(sc) input_df = spark.createDataFrame( [ (105.111, 13.12), (13.12, 13.12), (None, 13.12), (13.12, 13.12), (None, 13.12), ], ["source_column_1", "source_column_2"], ) try: df_output = data_quality.FlagDuplicateRows.apply( data_frame=input_df, spark_context=sc, target_column="flag_row", true_string="True", false_string="False", target_index=1 ) except: print("Unexpected Error happened ") raise

輸出

輸出將是具有額外資料欄 flag_row 的 PySpark DataFrame,根據 source_column_1 資料欄指出資料列是否重複。產生的 `df_output` DataFrame 將包含下列資料列:

``` +---------------+---------------+--------+ |source_column_1|source_column_2|flag_row| +---------------+---------------+--------+ | 105.111| 13.12| False| | 13.12| 13.12| True| | null| 13.12| True| | 13.12| 13.12| True| | null| 13.12| True| +---------------+---------------+--------+ ```

flag_row 資料欄指出資料列是否重複。`true_string` 設定為 "True",而 `false_string` 設定為 "False"。`target_index` 設定為 1,這表示 flag_row 資料欄將插入輸出 DataFrame 中的第二個位置 (索引 1)。

方法

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

FlagDuplicateRows 會傳回一個新資料欄,其中每個資料列都有一個指定的值,指示該資料列是否與資料集中較早的資料列完全相符。找到相符項目時,其會標記為重複項目。初始出現不會標記,因為其不符合較早的資料列。

  • true_string – 在資料列符合較早的資料列時要插入的值。

  • false_string – 在資料列是唯一時要插入的值。

  • target_column – 插入資料集的新資料欄名稱。

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