

# Clase de EvaluateDataQuality
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality"></a>

Evalúa un conjunto de reglas de calidad de datos comparándolo con un `DynamicFrame` y devuelve un `DynamicFrame` nuevo con los resultados de la evaluación.

## Ejemplo
<a name="pyspark-EvaluateDataQuality-example"></a>

En el siguiente código de ejemplo, se muestra cómo evaluar la calidad de los datos de un `DynamicFrame` y, a continuación, ver los resultados de la calidad de los datos. 

```
from awsglue.transforms import *
from pyspark.context import SparkContext
from awsglue.context import GlueContext
from awsgluedq.transforms import EvaluateDataQuality

#Create Glue context
sc = SparkContext.getOrCreate()
glueContext = GlueContext(sc)

# Define DynamicFrame
legislatorsAreas = glueContext.create_dynamic_frame.from_catalog(
    database="legislators", table_name="areas_json")

# Create data quality ruleset
ruleset = """Rules = [ColumnExists "id", IsComplete "id"]"""

# Evaluate data quality
dqResults = EvaluateDataQuality.apply(
    frame=legislatorsAreas,
    ruleset=ruleset,
    publishing_options={
        "dataQualityEvaluationContext": "legislatorsAreas",
        "enableDataQualityCloudWatchMetrics": True,
        "enableDataQualityResultsPublishing": True,
        "resultsS3Prefix": "amzn-s3-demo-bucket1",
    },
)


# Inspect data quality results
dqResults.printSchema()
dqResults.toDF().show()
```

### Output
<a name="pyspark-EvaluateDataQuality-example-output"></a>

```
root
|-- Rule: string
|-- Outcome: string
|-- FailureReason: string
|-- EvaluatedMetrics: map
|    |-- keyType: string
|    |-- valueType: double


+-----------------------+-------+-------------+---------------------------------------+
|Rule                   |Outcome|FailureReason|EvaluatedMetrics                       |
+-----------------------+-------+-------------+---------------------------------------+
|ColumnExists "id"      |Passed |null         |{}                                     |
|IsComplete "id"        |Passed |null         |{Column.first_name.Completeness -> 1.0}|
+-----------------------+-------+-------------+---------------------------------------+
```

## Métodos
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-_methods"></a>
+ [\$1\$1call\$1\$1](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-__call__)
+ [apply](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-apply)
+ [name](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-name)
+ [describeArgs](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeArgs)
+ [describeReturn](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeReturn)
+ [describeTransform](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeTransform)
+ [describeErrors](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeErrors)
+ [describe](#aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describe)

## \$1\$1call\$1\$1(frame, ruleset, publishing\$1options = \$1\$1)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-__call__"></a>
+ `frame`: el `DynamicFrame` del que desea evaluar la calidad de los datos.
+ `ruleset`: un conjunto de reglas de lenguaje de definición de calidad de datos (DQDL) en formato de cadena. Para obtener más información sobre DQDL, consulte la guía de [Referencia del lenguaje de definición de calidad de datos (DQDL)](dqdl.md).
+ `publishing_options`: un diccionario que especifica las siguientes opciones para publicar los resultados y las métricas de la evaluación:
  + `dataQualityEvaluationContext`: una cadena que especifica el espacio de nombres en el que AWS Glue debe publicar las métricas de Amazon CloudWatch y los resultados de calidad de los datos. Las métricas agregadas aparecen en CloudWatch, mientras que los resultados completos aparecen en la interfaz de AWS Glue Studio.
    + Obligatorio: no
    + Valor predeterminado: \$1: `default_context`
  + `enableDataQualityCloudWatchMetrics`: especifica si los resultados de la evaluación de la calidad de los datos deben publicarse en CloudWatch. Especifique un espacio de nombres para las métricas mediante la opción `dataQualityEvaluationContext`.
    + Obligatorio: no
    + Valor predeterminado: False
  + `enableDataQualityResultsPublishing`: especifica si los resultados de calidad de los datos deben estar visibles en la pestaña **Data Quality** (Calidad de datos) de la interfaz de AWS Glue Studio.
    + Obligatorio: no
    + Valor predeterminado: true
  + `resultsS3Prefix`: especifica la ubicación de Amazon S3 en la que AWS Glue puede escribir los resultados de la evaluación de la calidad de los datos.
    + Obligatorio: no
    + Valor predeterminado: "" (cadena vacía)

## apply(cls, \$1args, \$1\$1kwargs)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-apply"></a>

Heredado de `GlueTransform` [apply](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-apply).

## name(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-name"></a>

Heredado de `GlueTransform` [nombre](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-name).

## describeArgs(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeArgs"></a>

Heredado de `GlueTransform` [describeArgs](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeArgs).

## describeReturn(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeReturn"></a>

Heredado de `GlueTransform` [describeReturn](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeReturn).

## describeTransform(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeTransform"></a>

Heredado de `GlueTransform` [describeTransform](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeTransform).

## describeErrors(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describeErrors"></a>

Heredado de `GlueTransform` [describeErrors](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeErrors).

## describe(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality-describe"></a>

Heredado de `GlueTransform` [describe](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describe).