Creación de modelos mediante el SDK Platform de Adobe Experience Platform

NOTE
La Espacio de trabajo de ciencia de datos ya no está disponible para su compra.
Esta documentación está destinada a clientes existentes con derechos anteriores a Data Science Workspace.

Este tutorial le proporciona información sobre la conversión de data_access_sdk_python al nuevo Python platform_sdk tanto en Python como en R. Este tutorial proporciona información sobre las siguientes operaciones:

Generar autenticación build-authentication

Authentication es necesario para realizar llamadas a Adobe Experience Platform, y se compone de una clave de API, un identificador de organización, un token de usuario y un token de servicio.

Python

Si está utilizando Jupyter Notebook, utilice el siguiente código para versión el client_context:

client_context = PLATFORM_SDK_CLIENT_CONTEXT

Si no usa Jupyter Notebook o necesita cambiar la organización, use el siguiente ejemplo de código:

from platform_sdk.client_context import ClientContext
client_context = ClientContext(api_key={API_KEY},
              org_id={ORG_ID},
              user_token={USER_TOKEN},
              service_token={SERVICE_TOKEN})

R

Si está utilizando Jupyter Notebook, utilice el siguiente código para versión el client_context:

library(reticulate)
use_python("/usr/local/bin/ipython")
psdk <- import("platform_sdk")

py_run_file("../.ipython/profile_default/startup/platform_sdk_context.py")
client_context <- py$PLATFORM_SDK_CLIENT_CONTEXT

Si no usa Jupyter Notebook o necesita cambiar de organización, use el siguiente ejemplo de código:

library(reticulate)
use_python("/usr/local/bin/ipython")
psdk <- import("platform_sdk")
client_context <- psdk$client_context$ClientContext(api_key={API_KEY},
              org_id={ORG_ID},
              user_token={USER_TOKEN},
              service_token={SERVICE_TOKEN})

Lectura básica de datos basic-reading-of-data

Con el nuevo Platform SDK, el tamaño máximo de lectura es de 32 GB, con un tiempo máximo de lectura de 10 minutos.

Si el tiempo de lectura está tardando demasiado, puede intentar utilizar una de las siguientes opciones de filtrado:

NOTE
La organización se ha establecido en client_context.

Python

Para leer datos en Python, utilice el ejemplo de código siguiente:

from platform_sdk.dataset_reader import DatasetReader
dataset_reader = DatasetReader(client_context, "{DATASET_ID}")
df = dataset_reader.limit(100).read()
df.head()

R

Para leer datos en R, utilice el siguiente ejemplo de código:

DatasetReader <- psdk$dataset_reader$DatasetReader
dataset_reader <- DatasetReader(client_context, "{DATASET_ID}")
df <- dataset_reader$read()
df

Filtrar por desplazamiento y límite filter-by-offset-and-limit

Dado que ya no se admite el filtrado por id. de lote, para ampliar el ámbito de lectura de los datos, debe usar offset y limit.

Python

df = dataset_reader.limit(100).offset(1).read()
df.head

R

df <- dataset_reader$limit(100L)$offset(1L)$read()
df

Filtrar por fecha filter-by-date

La granularidad del filtro de fechas ahora se define por la marca de tiempo, en lugar de establecerse por día.

Python

df = dataset_reader.where(\
    dataset_reader['timestamp'].gt('2019-04-10 15:00:00').\
    And(dataset_reader['timestamp'].lt('2019-04-10 17:00:00'))\
).read()
df.head()

R

df2 <- dataset_reader$where(
    dataset_reader['timestamp']$gt('2018-12-10 15:00:00')$
    And(dataset_reader['timestamp']$lt('2019-04-10 17:00:00'))
)$read()
df2

El nuevo Platform SDK admite las siguientes operaciones:

Operación
Función
Es igual a (=)
eq()
Mayor que (>)
gt()
Mayor o igual que (>=)
ge()
Menor que (<)
lt()
Menor o igual que (<=)
le()
Y (&)
And()
O (`
`)

Filtrar por columnas seleccionadas filter-by-selected-columns

Para refinar aún más la lectura de los datos, también puede filtrar por nombre de columna.

Python

df = dataset_reader.select(['column-a','column-b']).read()

R

df <- dataset_reader$select(c('column-a','column-b'))$read()

Obtener resultados ordenados get-sorted-results

Los resultados recibidos se pueden ordenar por columnas especificadas del destino conjunto de datos y en su orden (asc/desc) respectivamente.

En el ejemplo siguiente, el marco de datos se ordena primero por "columna-a" en orden ascendente. Las filas que tienen los mismos valores para "columna-a" se ordenan por "columna-b" en de bajada orden.

Python

df = dataset_reader.sort([('column-a', 'asc'), ('column-b', 'desc')])

R

df <- dataset_reader$sort(c(('column-a', 'asc'), ('column-b', 'desc')))$read()

Escritura básica de datos basic-writing-of-data

NOTE
La organización se establece en el client_context.

Para escribir datos en Python y R, utilice uno de los siguientes ejemplos:

Python

from platform_sdk.models import Dataset
from platform_sdk.dataset_writer import DatasetWriter

dataset = Dataset(client_context).get_by_id("{DATASET_ID}")
dataset_writer = DatasetWriter(client_context, dataset)
write_tracker = dataset_writer.write({PANDA_DATAFRAME}, file_format='json')

R

dataset <- psdk$models$Dataset(client_context)$get_by_id("{DATASET_ID}")
dataset_writer <- psdk$dataset_writer$DatasetWriter(client_context, dataset)
write_tracker <- dataset_writer$write({PANDA_DATAFRAME}, file_format='json')

Pasos siguientes

Una vez configurado el cargador de datos platform_sdk, los datos se preparan y se dividen en los conjuntos de datos train y val. Para obtener información sobre la preparación de datos y la ingeniería de características, visita la sección sobre preparación de datos e ingeniería de características en el tutorial para crear un fórmula usar JupyterLab blocs de notas.

recommendation-more-help
cc79fe26-64da-411e-a6b9-5b650f53e4e9