本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
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。