Expressões lambda python
Primeiro vamos ao conceito de funções anônimas em Python. Depois, vamos aplicar com pandas para cada linha do dataframe
Usamos lambda para criar uma função em uma única linha sem a necessidade de criar um nome e usar o termo def.
Portanto a função:
def quadrado(x):
return x**2É equivalente a expressão:
lambda x : x**2Qual a vantagem?
Get Fabricio Giordanelli’s stories in your inbox
Join Medium for free to get updates from this writer.
A vantagem é que você usa apenas uma linha e não precisa dar nome a essa função.
A função .apply() recebe como parâmetro uma função e aplica a cada linha do DataFrame selecionado essa função.
Então poderíamos usar das duas maneiras:
dados.apply(quadrado)
dados.apply(lambda x : x**2)E o resultado seria o mesmo. A função dentro do apply seria aplicada a cada linha (elemento) do DataFrame dados. Repare que a função quadrado é utilizada sem o uso do parênteses dentro do método apply()
Podemos também aplicar a apenas uma coluna:
dados['coluna selecionada'].apply(quadrado)
dados['coluna selecionada'].apply(lambda x : x**2)Nesse caso, irá elevar ao quadrado cada elemento da coluna ‘coluna selecionada’.




