Introdução
A função Transformar em Pandas (Pitão) pode ser um pouco difícil de entender, especialmente se vier de um Destacando-se fundo. Honestamente, a maioria dos cientistas de dados não o usa imediatamente em sua jornada de aprendizagem.
Mas a função de transformação do Pandas é, na verdade, uma ferramenta bastante útil como cientista de dados!! É um recurso poderoso que você pode usar para a engenharia de recursos em Piton.
Pessoalmente, Comecei a usar isso ao tentar executar a engenharia de funções em um hackathon, e fiquei agradavelmente surpreso com a rapidez com que a função Transform funcionou. Acredito fortemente que você se beneficiará em conhecer e usar o recurso Transform e, portanto, Eu decidi escrever sobre ela neste artigo.
Para aprender o básico de Python e Pandas para ciência de dados, confira esses cursos populares:
Tabela de conteúdo
- Qual é a função de transformação em Python?
- Por que a função de transformação é importante?
- Aplicar ou transformar a função em Python
1. Qual é a função de transformação em Python?
A função Transform do Python retorna um quadro de dados auto-produzido com valores transformados após aplicar a função especificada em seu parâmetro. Este quadro de dados tem o mesmo comprimento que o último quadro de dados.
Isso foi muito para absorver, então deixe-me dividir com um exemplo.
Digamos que queremos multiplicar 10 para cada elemento em um quadro de dados:
O quadro de dados original é parecido com este:
Este é o quadro de dados que obtemos após aplicar a função Transform do Python:
2. Por que a função de transformação do Python é importante?
A transformação é útil durante a extração de recursos. Como o nome sugere, extraímos novas funções das existentes. Vamos entender a importância da função de transformação com a ajuda de um exemplo.
Aqui, temos um conjunto de dados sobre uma loja de departamentos:
Podemos ver que cada usuário comprou vários produtos com valores de compra diferentes. Gostaríamos de saber qual é o valor médio de compra de cada usuário. Isso nos ajuda a criar um novo recurso para que o modelo entenda melhor a relação.
Esta é a saída desejada:
Existem várias abordagens para fazer isso:
- Usando Groupby seguido de merge ()
- Abordagem da função de transformação
Vou implementar ambos neste artigo.
Método 1: uso de Groupby seguido de fusão ():
A primeira abordagem é usar agrupar por para adicionar os dados, em seguida, mescle esses dados de volta ao quadro de dados original usando a função de mesclagem (). Vamos fazer!
Paso 1: importar as bibliotecas e ler o conjunto de dados
Paso 2: use groupby para calcular o agregado
Aqui está uma representação pictórica de como agrupar por reúne a média de cada usuário:
Paso 3: usando a função de mesclagem () para recombinar
Agora a parte difícil. Como combinamos esses dados com o quadro de dados original? Usaremos a função de mesclagem () Para esta tarefa. Você pode ler mais sobre junções e mesclagens em Python usando Pandas aqui e aqui, respectivamente.
Nosso quadro de dados original se parece com este:
Isso certamente faz nosso trabalho.. Mas é um processo de várias etapas e requer código adicional para obter os dados na forma que precisamos. Este processo de várias etapas pode consumir recursos em hackatones onde o tempo é uma grande limitação.
Podemos resolver isso de forma eficaz usando a função de transformação em Pandas.
Foco 2: usando a função de transformação python
Esta é uma função importante para criar funções. Créame, Pode mudar as regras do jogo!
A função de transformação retém o mesmo número de itens que o conjunto de dados original após realizar a transformação. Vamos nos apoiar em uma etapa de linha super fácil usando groupby seguido por uma transformação:
A representação pictórica é a seguinte:
Não poderia ser mais fácil, verdade? O quadro de dados original é semelhante ao anterior na última etapa.
O tempo que leva para a função de transformação realizar a operação acima é comparativamente menor em um grande quadro de dados. Essa é uma vantagem significativa em comparação com a primeira abordagem que usamos..
Deixe-me demonstrar a função Transform usando Pandas em Python.
Suponha que criamos um conjunto de dados aleatórios de 1,000,000 de linhas e 3 colunas. Agora calculamos a média de uma coluna com base em groupby (semelhante à média de todas as compras com base em groupby user_id).
Paso 1: importar as bibliotecas
Paso 2: crie o quadro de dados
Paso 3: use o procedimento de mesclagem
Paso 4: usar a função de transformação
Isso mostra claramente que a função de transformação é muito mais rápida do que a abordagem anterior. Bem feito!
3. Diferença entre as funções Aplicar e Transformar em Python
Agora, digamos que queremos criar uma nova coluna com base nos valores de outra coluna. Este é o quadro de dados com o qual estamos trabalhando:
Com a função aplicar:
É assim que fica o resultado ao usar a função Aplicar:
A função do aplicativo envia uma cópia completa do quadro de dados para que possamos manipular todas as linhas ou colunas simultaneamente.
Com a função Transform:
Este recurso não é possível na função Transform. Isso manipula apenas uma única linha ou coluna com base no valor do eixo e não manipula um quadro de dados inteiro. Portanto, podemos usar a função Aplicar ou Transformar conforme o requisito.
Notas finais
A função Transform é muito útil quando procuro manipular linhas ou colunas rapidamente. Como eu mencionei antes, isso é especialmente útil em hackathons quando o tempo é essencial.
Se você encontrar mais recursos do Pandas, Comente e ficarei feliz em aprender e compartilhar!
Comece a participar de concursos para mostrar suas habilidades. Este é um ótimo ponto de partida: Projeto de vendas da Black Friday.
Você pode se registrar no Plataforma DataHack E participe de competições legais e compita com os melhores especialistas em ciência de dados!!
Relacionado
Postagens Relacionadas:
- livros de ciencia de dados | Os melhores livros de ciência de dados para transformar
- 4 projetos musicais de ciência de dados que visam transformar a indústria musical
- Mesa dinâmica pandas | Crie uma tabela dinâmica usando pandas em Python
- Pandas loc vs iloc | loc vs iloc em pandas para selecionar dados











