Modellen ontwerpen met de Adobe Experience Platform Platform SDK
Deze zelfstudie biedt u informatie over het converteren data_access_sdk_python
naar de nieuwe Python platform_sdk
in zowel Python als R. Deze zelfstudie biedt informatie over de volgende bewerkingen:
Verificatie opbouwen build-authentication
De authentificatie wordt vereist om vraag te maken aan Adobe Experience Platformen bestaat uit API-sleutel, organisatie-id, een gebruikerstoken en een servicetoken.
Python
Als u Jupyter-laptop gebruikt, gebruikt u de onderstaande code om de client_context
:
client_context = PLATFORM_SDK_CLIENT_CONTEXT
Als u geen Jupyter-laptop gebruikt of als u de organisatie moet wijzigen, gebruikt u het onderstaande codevoorbeeld:
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
Als u Jupyter-laptop gebruikt, gebruikt u de onderstaande code om de 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
Als u geen Jupyter-laptop gebruikt of als u een andere organisatie wilt gebruiken, gebruikt u het onderstaande codevoorbeeld:
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})
Basislezen van gegevens basic-reading-of-data
Met de nieuwe Platform SDK, de maximale leesgrootte is 32 GB, met een maximale leestijd van 10 minuten.
Als de leestijd te lang duurt, kunt u een van de volgende filteropties gebruiken:
client_context
.Python
Voor het lezen van gegevens in Python gebruikt u het onderstaande codevoorbeeld:
from platform_sdk.dataset_reader import DatasetReader
dataset_reader = DatasetReader(client_context, "{DATASET_ID}")
df = dataset_reader.limit(100).read()
df.head()
R
Gebruik het onderstaande codevoorbeeld om gegevens in R te lezen:
DatasetReader <- psdk$dataset_reader$DatasetReader
dataset_reader <- DatasetReader(client_context, "{DATASET_ID}")
df <- dataset_reader$read()
df
Filteren op verschuiving en limiet filter-by-offset-and-limit
Omdat filteren op batch-id niet meer wordt ondersteund, moet u voor het lezen van gegevens in een bereik het volgende gebruiken: offset
en limit
.
Python
df = dataset_reader.limit(100).offset(1).read()
df.head
R
df <- dataset_reader$limit(100L)$offset(1L)$read()
df
Filteren op datum filter-by-date
De korreligheid van datum het filtreren wordt nu bepaald door timestamp, eerder dan wordt geplaatst tegen de dag.
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
De nieuwe Platform SDK ondersteunt de volgende bewerkingen:
=
)eq()
>
)gt()
>=
)ge()
<
)lt()
<=
)le()
&
)And()
Filteren op geselecteerde kolommen filter-by-selected-columns
Als u het lezen van gegevens verder wilt verfijnen, kunt u ook filteren op kolomnaam.
Python
df = dataset_reader.select(['column-a','column-b']).read()
R
df <- dataset_reader$select(c('column-a','column-b'))$read()
Gesorteerde resultaten ophalen get-sorted-results
De ontvangen resultaten kunnen door gespecificeerde kolommen van de doeldataset en in hun orde (asc/desc) respectievelijk worden gesorteerd.
In het volgende voorbeeld wordt dataframe eerst in oplopende volgorde gesorteerd op "column-a". Rijen met dezelfde waarden voor "column-a" worden vervolgens in aflopende volgorde gesorteerd op "column-b".
Python
df = dataset_reader.sort([('column-a', 'asc'), ('column-b', 'desc')])
R
df <- dataset_reader$sort(c(('column-a', 'asc'), ('column-b', 'desc')))$read()
Basisschrijven van gegevens basic-writing-of-data
client_context
.Gebruik een van de volgende voorbeelden om gegevens in Python en R te schrijven:
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')
Volgende stappen
Zodra u hebt gevormd platform_sdk
de gegevenslader, de gegevens ondergaat voorbereiding en wordt dan verdeeld aan train
en val
datasets. Ga voor meer informatie over het voorbereiden en ontwerpen van gegevens naar de sectie over gegevensvoorbereiding en functietechniek in de zelfstudie voor het maken van een recept met JupyterLab -laptops.