Analise seus dados usando notebooks
Esta tutorial foca em como usar os notebooks Jupyter, construídos nos Área de trabalho de Ciência de Dados, para acessar, explorar e visualizar seus dados. Ao final desta tutorial, você deve compreender alguns dos recursos que a Jupyter Notebooks oferta para entender melhor seus dados.
Os seguintes conceitos são introduzidos:
- JupyterLab: JupyterLab é a interface de última geração baseada na Web para o Project Jupyter e é bem integrada ao Adobe Experience Platform.
- Lotes: conjuntos de dados são compostos de lotes. Um lote é um conjunto de dados coletados por um período e processados juntos como uma única unidade. Novos lotes são criados quando dados são adicionados a um conjunto de dados.
- SDK do acesso de dados (obsoleto): o SDK do acesso aos dados foi descontinuado. Use o Platform SDK guia.
Explore notebooks em data science Área de trabalho
Nesta seção, são explorados dados que foram assimilados anteriormente nos schema de vendas no varejo.
O Data Science Workspace permite que os usuários criem Jupyter Notebooks por meio da plataforma JupyterLab, onde podem criar e editar fluxos de trabalho de aprendizado de máquina. O JupyterLab é uma ferramenta de colaboração servidor-cliente que permite aos usuários editar documentos do bloco de anotações via navegador da Web. Esses blocos de anotações podem conter código executável e elementos rich text. Para nossos propósitos, usaremos o Markdown para descrição de análise e código Python executável para realizar exploração e análise de dados.
Escolha seu espaço de trabalho
Ao iniciar o JupyterLab, nos é apresentada uma interface baseada na Web para o Jupyter Notebooks. Dependendo do tipo de notebook escolhido, o kernel correspondente será iniciado.
Ao comparar qual ambiente usar, devemos considerar as limitações de cada serviço. Por exemplo, se estamos usando a biblioteca pandas com Python, como usuário comum, o limite de RAM é de 2 GB. Mesmo sendo um usuário avançado, estaríamos limitados a 20 GB de RAM. Se estiver lidando com computações maiores, faria sentido usar Spark que oferece 1,5 TB que é compartilhado com todas as instâncias do bloco de anotações.
Por padrão, o Tensorflow fórmula funcionar em um cluster GPU e Python for executado dentro de um cluster de CPU.
Criar um novo notebook
Adobe Experience Platform No interface, selecione Data Science no menu superior para levá-lo ao data science Área de trabalho. Neste página, selecione JupyterLab para abrir a JupyterLab iniciador. Você deve ver um página semelhante a este.
Em nosso tutorial, estaremos usando Python 3 no Notebook Jupyter para mostrar como acessar e explorar os dados. Na página do Iniciador, há blocos de anotações de exemplo fornecidos. Vamos usar a receita de Vendas a Varejo para Python 3.
A fórmula de Vendas de varejo é um exemplo independente que usa o mesmo conjunto de dados de Vendas de varejo para mostrar como os dados podem ser explorados e visualizados no Jupyter Notebook. Além disso, o notebook aprofunda-se em treinamento e verificação. Mais informações sobre este bloco de anotações específico podem ser encontradas nesta apresentação.
Acessar dados
data_access_sdk_python
está obsoleta e não é mais recomendada. Consulte a conversão do SDK de acesso de dados em Platform tutorial do SDK para converter seu código. As mesmas etapas abaixo ainda se aplicam a esse tutorial.Acessaremos internamente os dados de Adobe Experience Platform e os dados externamente. Usaremos o data_access_sdk_python
biblioteca para acessar dados internos, como conjuntos de dados e esquemas XDM. Para dados externos, usaremos os pandas Python biblioteca.
Dados externos
Com o notebook Vendas no varejo aberto, encontre o cabeçalho "Carregar dados". O código Python a seguir usa a estrutura de dados DataFrame
dos pandas e a função read_csv() para ler o CSV hospedado em Github no DataFrame:
A estrutura de dados DataFrame de Pandas é uma estrutura de dados rotulada bidimensional. Para ver rapidamente as dimensões de nossos dados, podemos usar o df.shape
. Isso retorna uma tupla que representa a dimensionalidade do DataFrame:
Finalmente, podemos dar uma olhada no que nossos dados parecem curtir. Podemos usar df.head(n)
para visualização as primeiras n
linhas do DataFrame:
Experience Platform dados
Agora, vamos acessar Experience Platform os dados.
Por ID do conjunto de dados
Para esta seção, estamos usando o conjunto de dados de Vendas de varejo, que é o mesmo conjunto de dados usado no bloco de anotações de amostra Vendas de varejo.
No Jupyter Notebook, você pode acessar os dados da guia Dados
Agora, no diretório Conjuntos de dados, é possível ver todos os conjuntos de dados assimilados. Observe que pode levar um minuto para carregar todas as entradas se seu diretório estiver preenchido com conjuntos de dados.
Como a conjunto de dados é a mesma, queremos substituir os dados de carga da seção anterior que usa dados externos. Selecione o bloco de código em Carregar dados e pressione a tecla 'd' no teclado duas vezes. Verifique se a focalizar está no bloco e não no texto. Pressione "esc" para escapar do focalizar de texto antes de pressionar 'd' duas vezes.
Agora, podemos clique com o botão direito no Retail-Training-<your-alias>
conjunto de dados e selecionar a opção "Explorar dados em notebook" na lista suspensa. Uma entrada de código executável aparecerá no seu notebook.
from data_access_sdk_python.reader import DataSetReader
from datetime import date
reader = DataSetReader()
df = reader.load(data_set_id="xxxxxxxx", ims_org="xxxxxxxx@AdobeOrg")
df.head()
Se você estiver trabalhando em outros núcleos Pythonalém disso, consulte essa página para acessar os Adobe Experience Platformdados na variável .
Selecionar a célula executável e pressionar a botão de reprodução na barra de ferramentas executará o código executável. A saída head()
será uma tabela com as chaves do conjunto de dados como colunas e as primeiras n linhas no conjunto de dados. head()
aceita um argumento inteiro para especificar quantas linhas deve ser saída. Por padrão, é 5.
Se você reiniciar o kernel e executar todas as células novamente, você deverá obter as mesmas saídas de antes.
Explore seus dados
Agora que podemos acessar seus dados, vamos focalizar nos dados em si usando estatísticas e visualização. O conjunto de dados que estamos usando é um conjunto de dados de varejo que dá informações diversas sobre 45 lojas diferentes em um determinado dia. Algumas características de um determinado e date
store
incluem o seguinte:
storeType
weeklySales
storeSize
temperature
regionalFuelPrice
markDown
cpi
unemployment
isHoliday
Resumo estatístico
Podemos usar Python’s pandas biblioteca para obter o tipo de dados de cada atributo. A saída da chamada a seguir fornecerá informações sobre o número de entradas e o tipo de dados de cada uma das colunas:
df.info()
Essas informações são úteis, pois conhecer o tipo de dados de cada coluna nos permitirá saber como tratar os dados.
Agora vamos ver o resumo estatístico. Somente os numérico tipos de dados serão mostrados, portanto date
, storeType
e isHoliday
não serão emitidos:
df.describe()
Com isso, podemos ver que há 6435 instâncias para cada característica. Além disso, informações estatísticas como média, desvio padrão (EST), mín, máx e interquartiles são fornecidas. Isso nos fornece informações sobre o desvio dos dados. Na próxima seção, vamos analisar a visualização que funciona em conjunto com essas informações para nos dar uma boa compreensão dos nossos dados.
Olhando para store
os valores mínimos e máximos, podemos ver que há 45 armazenamentos exclusivos que os dados representam. Há também storeTypes
que diferenciam o que é um armazenamento. Podemos ver a distribuição de storeTypes
fazendo o seguinte:
Isso significa que 22 lojas são de storeType
A
, 17 são storeType
B
, e 6 são storeType
C
.
Visualização de dados
Agora que conhecemos nossos valores de quadros de dados, queremos complementar isso com visualizações para tornar as coisas mais claras e fáceis de identificar padrões. Gráficos também são úteis ao transmitir resultados a uma público-alvo. Alguns Python bibliotecas úteis para visualização incluem:
Nesta seção, abordaremos rapidamente algumas vantagens do uso de cada biblioteca.
Matplotlib é o pacote de visualização Python mais antigo. Seu objetivo é tornar "coisas fáceis e difíceis possíveis". Isso tende a ser verdade, pois o pacote é extremamente eficiente, mas também vem com complexidade. Nem sempre é fácil obter um gráfico de aparência razoável sem tomar uma quantidade considerável de tempo e esforço.
Os pandas são usados principalmente para seu objeto DataFrame que permite manipulação de dados com indexação integrada. No entanto, os pandas também incluem uma trama incorporada funcionalidade que é baseada em matplotlib.
seaborn é um pacote build em cima de matplotlib. Seu principal objetivo é tornar os gráficos padrão visualmente mais atraentes e simplificar a criação de gráficos complicados.
ggplot é um pacote também criado em cima de matplotlib. No entanto, a diferença principal é que o ferramenta é uma porta de ggplot2 para R. Assim como o seaborn, o objetivo é melhorar após matplotlib. Os usuários familiarizados com ggplot2 para R devem considerar essa biblioteca.
Gráficos univariados
Gráficos univariados são gráficos de um variável individual. Um gráfico univariado comum é usado para visualizar seus dados na caixa e no gráfico do bigode.
Usando nosso conjunto de dados de varejo de antes, podemos gerar a caixa e o gráfico de bigodes para cada uma das 45 lojas e suas vendas semanais. O gráfico é gerado usando a seaborn.boxplot
função.
Uma caixa e um gráfico de bigode são usados para mostrar a distribuição de dados. As linhas externas do gráfico mostram os quartis superior e inferior, enquanto a caixa abrange o intervalo interquartil. A linha na caixa marca a mediana. Quaisquer pontos de dados maiores que 1,5 vez o quartil superior ou inferior são marcados como um círculo. Esses pontos são considerados outliers.
Gráficos multivariado
Gráficos multivariados são usados para ver a interação entre variáveis. Com a visualização, os cientistas de dados podem ver se há correlações ou padrões entre as variáveis. Um gráfico multivariado comum usado é uma matriz de correlação. Com uma matriz de correlação, as dependências entre múltiplas variáveis são quantificadas com o coeficiente de correlação.
Usando o mesmo conjunto de dados de varejo, podemos gerar a matriz de correlação.
Observe a diagonal de 1 no centro. Isso mostra que, ao comparar um variável a si mesmo, ele tem um correlação positivo completo. Fortes correlação positivos terão uma magnitude próxima de 1, enquanto correlações fracas serão próximas de 0. O correlação negativo é mostrado com um coeficiente negativo mostrando uma tendência inversa.
Próximas etapas
Esta tutorial foi explicada sobre como criar um novo notebook Jupyter na Área de trabalho de Ciência de Dados e como acessar dados externamente e também de Adobe Experience Platform. Especificamente, fomos além das seguintes etapas:
- Criar um novo notebook Jupyter
- Acessar conjuntos de dados e esquemas
- Explorar conjuntos de dados
Agora você está pronto para seguir para a próxima seção para empacotar uma fórmula e importar para o Data Science Workspace.