Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Aprendendo Sobre Funções Lambda | Familiarizando-se com Indexação e Seleção de Dados
Manipulação de Dados com Pandas

bookAprendendo Sobre Funções Lambda

Deslize para mostrar o menu

Note
Definição

Uma função lambda é uma função pequena e anônima definida com a palavra-chave lambda. Diferente das funções regulares definidas com def, uma função lambda não possui nome e é destinada a lógicas curtas e de uso único.

A sintaxe é:

lambda arguments: expression

A função recebe arguments e retorna o resultado de expression. Alguns exemplos simples:

12345
double = lambda x: x * 2 print(double(5)) # Returns 10 is_even = lambda x: x % 2 == 0 print(is_even(4)) # Returns True
copy

Usando lambda com iloc[]

No pandas, iloc[] normalmente aceita posições baseadas em inteiros. No entanto, também é possível passar uma função lambda – nesse caso, x se refere ao próprio DataFrame, e x.index retorna os valores do índice das linhas:

data.iloc[lambda x: x.index < 5]

Isso retorna as cinco primeiras linhas (índices de 0 a 4). Veja o que cada parte faz:

  • lambda x: define uma função anônima onde x é o DataFrame;
  • x.index: acessa os valores do índice das linhas;
  • x.index < 5: condição de filtragem; apenas as linhas cujo índice é menor que 5 são selecionadas.

O resultado é um array booleano que o iloc[] utiliza para filtrar as linhas.

Filtrando por Paridade do Índice

Um caso de uso comum é dividir um conjunto de dados por índices pares e ímpares. O operador módulo % retorna o resto da divisão:

123456789101112
import pandas as pd # Data import data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/IMDb_Data_final.csv') # Rows with even indices (0, 2, 4, ...) even = data.iloc[lambda x: x.index % 2 == 0] print(even.head()) # Rows with odd indices (1, 3, 5, ...) odd = data.iloc[lambda x: x.index % 2 != 0] print(odd.head())
copy

x.index % 2 == 0 é True quando o índice é divisível por 2 (par) e False caso contrário.

question mark

A que se refere x no código a seguir?

Selecione a resposta correta

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 5

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Seção 1. Capítulo 5
some-alt