최  호민

최 호민

1679141717

Python의 Lambda 함수 내에서 RegEx를 사용하는 3가지 방법

이 Python RegEx(정규식) 자습서에서는 filter(), map() 함수 및 sort() 메서드를 사용하여 Python의 람다 함수 내에서 RegEx를 사용하는 3가지 방법을 보여줍니다.

Python의 람다 함수 내에서 RegEx를 사용할 수 있습니다. 함수를 매개 변수로 사용하는 모든 Python 메서드 또는 함수에 이를 적용할 수 있습니다. 이러한 함수 및 메서드에는 filter(), map(), any(), sort() 등이 포함됩니다.

람다 함수 내에서 정규식을 사용하는 방법을 보여주므로 계속 읽으십시오.

우리가 다룰 내용

  • Lambda 함수 표현식 내에서 RegEx를 사용하는 방법
    • filter() 함수와 함께 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법
    • map() 함수와 함께 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법
    • How to use RegEx inside the Expression of a Lambda Function with the sort() Method
  • Conclusion

How to use RegEx inside the Expression of a Lambda Function

The syntax with which a lambda function can take a RegEx as its expression looks like this:

lambda x: re.method(pattern, x)

Be aware that you have to use the lambda function on something. And that’s where the likes of map(), sort(), filter(), and others come in.

How to use RegEx inside the Expression of a Lambda Function with the filter() Function

The first example I will show you use the filter() function:

import re

fruits = ['apple', 'mango', 'banana', 'cherry', 'apricot', 'raspberry', 'avocado']
filtered_fruits = filter(lambda fruit: re.match('^a', fruit), fruits)

# convert the new fruits to another list and print it
print(list(filtered_fruits)) # ['apple', 'apricot', 'avocado']

In the code above:

  • the filter() takes the lambda function as the function to execute and the fruits list as the iterable
  • 람다 함수의 표현을 위해 Python RegEx의 방법을 사용 하고 인수에 re.match()패턴을 사용합니다.^afruit
  • 내가 한 마지막 작업은 패턴과 일치하는 목록의 모든 항목을 목록으로 변환하는 것입니다.

함수 가 있는 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법map()

와 같은 다른 함수가 있는 람다 함수 내에서 RegEx를 사용하려면 map()구문이 비슷합니다.

import re

fruits2 = ['opple', 'bonono', 'cherry', 'dote', 'berry']
modified_fruits = map(lambda fruit: re.sub('o', 'a', fruit), fruits2)

# convert the new fruits to another list and print it
print(list(modified_fruits)) # ['apple', 'banana', 'cherry', 'date', 'berry']

위의 코드에서:

  • 함수를 사용하여 목록을 반복 modified_fruits합니다.fruits2map()
  • re.sub()Python RegEx의 방법을 람다 함수의 표현으로 사용합니다 .

re.sub메서드를 사용하면 첫 번째 값을 두 번째 값으로 바꿀 수 있습니다. 이 예에서는 의 모든 발생을 o로 전환했습니다 a.

메서드를 사용하여 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법sort()

내가 보여줄 마지막 예는 sort()목록 방법을 사용합니다.

import re

fruits = [ 'banana', 'fig', 'grapefruit']

# sort fruits based on the number of vowels
fruits.sort(key=lambda x: len(re.findall('[aeiou]', x)))

print(fruits) #['fig', 'banana', 'grapefruit']

코드에서 람다 함수는 모음 수를 기준으로 목록을 정렬합니다. len()메소드, findall()Python RegEx의 메소드 및 패턴 의 조합으로 수행합니다 [aeiou].

모음 수가 가장 적은 과일이 먼저 나옵니다. 를 사용하면 reverse=True모음이 가장 많은 과일을 기준으로 내림차순으로 배열합니다.

import re

fruits = [ 'banana', 'fig', 'grapefruit']

# sort fruits based on the number of vowels
fruits.sort(key=lambda x: len(re.findall('[aeiou]', x)), reverse=True)

print(fruits) # ['grapefruit', 'banana', 'fig']

결론

이 기사에서는 , 함수 및 메소드 를 사용하는 예제를 보여줌으로써 RegEx에서 람다 함수로 전달하는 방법을 살펴 filter()보았습니다 .map()sort()

이 기사가 람다 함수 내에서 RegEx를 사용하는 데 필요한 지식을 제공하기를 바랍니다.

계속 코딩하세요!

출처: https://www.freecodecamp.org

#python #regex 

What is GEEK

Buddha Community

Python의 Lambda 함수 내에서 RegEx를 사용하는 3가지 방법
최  호민

최 호민

1679141717

Python의 Lambda 함수 내에서 RegEx를 사용하는 3가지 방법

이 Python RegEx(정규식) 자습서에서는 filter(), map() 함수 및 sort() 메서드를 사용하여 Python의 람다 함수 내에서 RegEx를 사용하는 3가지 방법을 보여줍니다.

Python의 람다 함수 내에서 RegEx를 사용할 수 있습니다. 함수를 매개 변수로 사용하는 모든 Python 메서드 또는 함수에 이를 적용할 수 있습니다. 이러한 함수 및 메서드에는 filter(), map(), any(), sort() 등이 포함됩니다.

람다 함수 내에서 정규식을 사용하는 방법을 보여주므로 계속 읽으십시오.

우리가 다룰 내용

  • Lambda 함수 표현식 내에서 RegEx를 사용하는 방법
    • filter() 함수와 함께 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법
    • map() 함수와 함께 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법
    • How to use RegEx inside the Expression of a Lambda Function with the sort() Method
  • Conclusion

How to use RegEx inside the Expression of a Lambda Function

The syntax with which a lambda function can take a RegEx as its expression looks like this:

lambda x: re.method(pattern, x)

Be aware that you have to use the lambda function on something. And that’s where the likes of map(), sort(), filter(), and others come in.

How to use RegEx inside the Expression of a Lambda Function with the filter() Function

The first example I will show you use the filter() function:

import re

fruits = ['apple', 'mango', 'banana', 'cherry', 'apricot', 'raspberry', 'avocado']
filtered_fruits = filter(lambda fruit: re.match('^a', fruit), fruits)

# convert the new fruits to another list and print it
print(list(filtered_fruits)) # ['apple', 'apricot', 'avocado']

In the code above:

  • the filter() takes the lambda function as the function to execute and the fruits list as the iterable
  • 람다 함수의 표현을 위해 Python RegEx의 방법을 사용 하고 인수에 re.match()패턴을 사용합니다.^afruit
  • 내가 한 마지막 작업은 패턴과 일치하는 목록의 모든 항목을 목록으로 변환하는 것입니다.

함수 가 있는 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법map()

와 같은 다른 함수가 있는 람다 함수 내에서 RegEx를 사용하려면 map()구문이 비슷합니다.

import re

fruits2 = ['opple', 'bonono', 'cherry', 'dote', 'berry']
modified_fruits = map(lambda fruit: re.sub('o', 'a', fruit), fruits2)

# convert the new fruits to another list and print it
print(list(modified_fruits)) # ['apple', 'banana', 'cherry', 'date', 'berry']

위의 코드에서:

  • 함수를 사용하여 목록을 반복 modified_fruits합니다.fruits2map()
  • re.sub()Python RegEx의 방법을 람다 함수의 표현으로 사용합니다 .

re.sub메서드를 사용하면 첫 번째 값을 두 번째 값으로 바꿀 수 있습니다. 이 예에서는 의 모든 발생을 o로 전환했습니다 a.

메서드를 사용하여 Lambda 함수의 표현식 내에서 RegEx를 사용하는 방법sort()

내가 보여줄 마지막 예는 sort()목록 방법을 사용합니다.

import re

fruits = [ 'banana', 'fig', 'grapefruit']

# sort fruits based on the number of vowels
fruits.sort(key=lambda x: len(re.findall('[aeiou]', x)))

print(fruits) #['fig', 'banana', 'grapefruit']

코드에서 람다 함수는 모음 수를 기준으로 목록을 정렬합니다. len()메소드, findall()Python RegEx의 메소드 및 패턴 의 조합으로 수행합니다 [aeiou].

모음 수가 가장 적은 과일이 먼저 나옵니다. 를 사용하면 reverse=True모음이 가장 많은 과일을 기준으로 내림차순으로 배열합니다.

import re

fruits = [ 'banana', 'fig', 'grapefruit']

# sort fruits based on the number of vowels
fruits.sort(key=lambda x: len(re.findall('[aeiou]', x)), reverse=True)

print(fruits) # ['grapefruit', 'banana', 'fig']

결론

이 기사에서는 , 함수 및 메소드 를 사용하는 예제를 보여줌으로써 RegEx에서 람다 함수로 전달하는 방법을 살펴 filter()보았습니다 .map()sort()

이 기사가 람다 함수 내에서 RegEx를 사용하는 데 필요한 지식을 제공하기를 바랍니다.

계속 코딩하세요!

출처: https://www.freecodecamp.org

#python #regex 

What Are Python Lambda Functions ?

Learning Python Takes Time

Traveling the road from rookie to Pythonista can take a while and varies from person to person. Most people start learning Python by reviewing the basic data structures for numbers, Booleans and strings, and then move to complex data structures like lists and dictionaries. From there you learn loops and if/else control logic, and eventually learn to write reusable code via functions.

Once you start exploring functions, you’ll come across lambda functions which can seem pretty intimidating at first. Similarly to list comprehensions, lambda functions allow you to write succinct code. Often something that would take several lines as a defined function can be done in one line using a lambda function!

Reviewing Python Functions

Typical Python functions are simply a self-contained set of instructions designed to perform a specific task. They are important to master and understand because they allow us to keep code organized by breaking it into smaller, reusable chunks. If we’re writing a large program, utilizing functions can make the code easier to read and debug too.

In Python, we define a function using the def keyword, then give the function a name along with any necessary arguments that impact the function body’s execution. Often times, the return keyword is used to terminate the function and return the desired output to whatever called the function. Here is an example function:

#python example function
def my_function(string):
     return print(string) 

testing my_function

The example my_function takes a string as an argument and prints the string as the returned output.

What Is A Lambda Function?

To take your Python skills to the next level, you need to master both normal functions and lambda functions. Lambda functions are great for making code shorter and more concise, which is the way of the Pythonista! We’ll take a look at a few simple examples to review the syntax, and then look at some actual use cases for lambda functions that will make you look like a pro.

As we see in the previous example, normal functions are defined using def and given a name. Lambda functions are defined using the lambda keyword and are nameless. They are anonymous functions that are not defined in any namespace, and they are intended for single use.

When I first learned about lambda functions, it seemed a bit tricky to wrap my head around. The syntax can feel confusing since a lambda function can take any number of arguments, but can only have one expression. Here are a couple simple examples:

#lambda syntax
#lambda <arguments> : <return expression>#simple example
lambda_example = lambda x: x + x#multiple arguments example
multiple_arguments = lambda x, y, z: (x + y) * z

Testing lambda function examples

Notice the multiple arguments are separated by commas. When calling the function, the caller provides the arguments. The return expression is defined after the colon (:). There is a single return expression, but the return expression can be simple or complex. It could even be another function, which makes lambda functions a powerful tool in your Python programming toolbox.

Using Lambda Functions

Let’s take a look at how we can use lambda to write functions the Pythonic way. Below we have a function that checks a list of strings for the word “two.” It returns the list of strings along with True or False depending on whether the word was in the strings:

sentences = ['Sentence one.', 'Sentence two.', 'Sentence three.']def contains_two(text):
    answers = []
    for s in txt:
        if 'two' in s:
            answers.append(True)
        else:
            answers.append(False)
    return zip(answers, text)

Testing contains_two function

Instead of defining a function and using a for loop to go through the list, we can rewrite this succinctly using Python’s map() function along with a lambda function.

contains_two_lambda = map(lambda x: (True, x) if 'two' in x else (False, x), sentences)

Testing contains_two_lambda function

The map() function takes a function and a sequence as arguments, running the function on the given sequence. The function we pass to map() is a lambda function, allowing us to perform the same thing our defined function does in only one line of code!

Lambda functions work well with functions like map(), reduce(), and filter(), three built-in Python functions that take a function as arguments. Lambda functions are also popular in data munging as they can work well with pandas dataframes. They can make applying logical operations to columns and rows concise one-liners.

Using Lambda Functions With Pandas DataFrames

As an analyst, I find myself using Pandas DataFrames all the time. Since DataFames are a popular data structure, let’s take a look at how easy it is to use lambda functions for transforming data in dataframes. Let’s create a simple pandas dataframe with some mock data:

#import dependencies
import pandas as pd#create dataframe
df = pd.DataFrame({
  'Occupation': ['Data Tech','Sales','Analyst','Engineer'],
  'Name': ['John Smith', 'Jodie Whales', 'Eric Kleppen', 'Richard Heart'],
  'Salary': [50000, 75000, 80000, 100000],
  'YearsAtCompany': [2, 3, 1, 3],})

Example dataframe

Next, let's create a new column called newSalary using a lambda function. If I’m giving out raises based on the column YearsAtCompany and want to see what a person’s new salary will be, I can use the apply() function similar to how we used map() in the previous example:

df['newSalary'] = 
df['Salary'].apply(lambda x: x * (1 + df['YearsAtCompany']/10))

Verifying newSalary column

Notice that the apply() function takes the lambda function as an argument and applies the function to each row in the Salary column. The expression in the lambda function uses YearsAtCompany to determine the size of the raise.

Wrapping Up

Writing Python like a pro takes practice, so don’t worry if you feel intimidated by new concepts like lambda functions. The syntax looks strange, but lambda functions allow you to write concise, one-time-use functions that are great for applying logical operations.

Although they can only perform one expression, the expression can be complex and even include another function. Lambda functions can work well with series of data, as even data structures like Pandas DataFrames. 

This story was originally published at https://betterprogramming.pub/become-a-python-programmer-what-are-lambda-functions-1de065686edf

#python #lambda #programmers 

Diego  Elizondo

Diego Elizondo

1654967220

¿Qué Son Las Funciones Python Lambda?

Aprender Python lleva tiempo

Recorrer el camino de novato a Pythonista puede tomar un tiempo y varía de persona a persona. La mayoría de las personas comienzan a aprender Python revisando las estructuras de datos básicas para números, booleanos y cadenas, y luego pasan a estructuras de datos complejas como listas y diccionarios. A partir de ahí, aprende los bucles y la lógica de control if/else, y eventualmente aprende a escribir código reutilizable a través de funciones.

Una vez que comience a explorar funciones, se encontrará con funciones lambda que pueden parecer bastante intimidantes al principio. De manera similar a las listas de comprensión, las funciones lambda le permiten escribir código sucinto. ¡A menudo, algo que tomaría varias líneas como una función definida se puede hacer en una línea usando una función lambda!

Revisión de las funciones de Python

Las funciones típicas de Python son simplemente un conjunto autónomo de instrucciones diseñadas para realizar una tarea específica. Es importante dominarlos y comprenderlos porque nos permiten mantener el código organizado dividiéndolo en fragmentos más pequeños y reutilizables. Si estamos escribiendo un programa grande, utilizar funciones puede hacer que el código sea más fácil de leer y depurar también.

En Python, definimos una función usando la palabra clave def , luego le damos un nombre a la función junto con los argumentos necesarios que afectan la ejecución del cuerpo de la función. Muchas veces, la palabra clave de retorno se usa para terminar la función y devolver la salida deseada a lo que sea que haya llamado a la función. Aquí hay una función de ejemplo:

#python example function
def my_function(string):
     return print(string) 

probando mi_funcion

El ejemplo my_function toma una cadena como argumento e imprime la cadena como la salida devuelta.

¿Qué es una función lambda?

Para llevar sus habilidades de Python al siguiente nivel, debe dominar tanto las funciones normales como las funciones lambda. Las funciones Lambda son excelentes para hacer que el código sea más corto y conciso, ¡que es el camino del Pythonista ! Echaremos un vistazo a algunos ejemplos simples para revisar la sintaxis y luego veremos algunos casos de uso reales para las funciones lambda que lo harán lucir como un profesional.

Como vemos en el ejemplo anterior, las funciones normales se definen usando defy se les da un nombre. Las funciones de Lambda se definen mediante la lambda palabra clave y no tienen nombre . Son funciones anónimas que no están definidas en ningún espacio de nombres y están pensadas para un solo uso.

Cuando aprendí por primera vez sobre las funciones lambda, me pareció un poco complicado entenderlo. La sintaxis puede parecer confusa ya que una función lambda puede tomar cualquier cantidad de argumentos, pero solo puede tener una expresión. Aquí hay un par de ejemplos simples:

#lambda syntax
#lambda <arguments> : <return expression>#simple example
lambda_example = lambda x: x + x#multiple arguments example
multiple_arguments = lambda x, y, z: (x + y) * z

Prueba de ejemplos de funciones lambda

Observe que los múltiples argumentos están separados por comas. Al llamar a la función, la persona que llama proporciona los argumentos. La expresión de retorno se define después de los dos puntos (:). Hay una única expresión de retorno, pero la expresión de retorno puede ser simple o compleja. Incluso podría ser otra función, lo que hace que las funciones lambda sean una herramienta poderosa en su caja de herramientas de programación de Python.

Uso de funciones Lambda

Echemos un vistazo a cómo podemos usar lambda para escribir funciones de la manera Pythonic. A continuación, tenemos una función que verifica una lista de cadenas para la palabra "dos". Devuelve la lista de cadenas junto con Verdadero o Falso dependiendo de si la palabra estaba en las cadenas:

sentences = ['Sentence one.', 'Sentence two.', 'Sentence three.']def contains_two(text):
    answers = []
    for s in txt:
        if 'two' in s:
            answers.append(True)
        else:
            answers.append(False)
    return zip(answers, text)

Probando la función contains_two

En lugar de definir una función y usar un ciclo for para recorrer la lista, podemos reescribir esto de manera sucinta usando la función map() de Python junto con una función lambda.

contains_two_lambda = map(lambda x: (True, x) if 'two' in x else (False, x), sentences)

Prueba de la función contains_two_lambda

La map()función toma una función y una secuencia como argumentos, ejecutando la función en la secuencia dada. La función que pasamos a map() es una función lambda, lo que nos permite realizar lo mismo que hace nuestra función definida en una sola línea de código.

Las funciones Lambda funcionan bien con funciones como map(), reduce() y filter(), tres funciones integradas de Python que toman una función como argumento. Las funciones Lambda también son populares en la transferencia de datos, ya que pueden funcionar bien con pandas dataframes. Pueden hacer que la aplicación de operaciones lógicas a columnas y filas sea breve y concisa.

Uso de funciones Lambda con Pandas DataFrames

Como analista, me encuentro usando Pandas DataFrames todo el tiempo. Dado que DataFames es una estructura de datos popular, echemos un vistazo a lo fácil que es usar funciones lambda para transformar datos en formato dataframes. Vamos a crear un marco de datos de pandas simple con algunos datos simulados:

#import dependencies
import pandas as pd#create dataframe
df = pd.DataFrame({
  'Occupation': ['Data Tech','Sales','Analyst','Engineer'],
  'Name': ['John Smith', 'Jodie Whales', 'Eric Kleppen', 'Richard Heart'],
  'Salary': [50000, 75000, 80000, 100000],
  'YearsAtCompany': [2, 3, 1, 3],})

Marco de datos de ejemplo

A continuación, creemos una nueva columna llamada newSalaryusando una función lambda. Si estoy dando aumentos basados ​​en la columna YearsAtCompanyy quiero ver cuál será el nuevo salario de una persona, puedo usar la apply()función similar a la que usamos map()en el ejemplo anterior:

df['newSalary'] = 
df['Salary'].apply(lambda x: x * (1 + df['YearsAtCompany']/10))

Verificando columna newSalary

Observe que la apply()función toma la función lambda como argumento y aplica la función a cada fila de la Salary columna. La expresión en la función lambda usa YearsAtCompany para determinar el tamaño del aumento.

Terminando

Escribir Python como un profesional requiere práctica, así que no se preocupe si se siente intimidado por nuevos conceptos como las funciones lambda. La sintaxis parece extraña, pero las funciones lambda le permiten escribir funciones concisas de un solo uso que son excelentes para aplicar operaciones lógicas.

Aunque solo pueden realizar una expresión, la expresión puede ser compleja e incluso incluir otra función. Las funciones Lambda pueden funcionar bien con series de datos, incluso con estructuras de datos como Pandas DataFrames. 

Esta historia se publicó originalmente en https://betterprogramming.pub/become-a-python-programmer-what-are-lambda-functions-1de065686edf

#python #lambda #programmers 

Python Lambda関数とは何ですか?

Pythonの学習には時間がかかります

ルーキーからパイソンイスタまでの道のりは時間がかかることがあり、人によって異なります。ほとんどの人は、数値、ブール値、文字列の基本的なデータ構造を確認することからPythonの学習を開始し、次にリストや辞書などの複雑なデータ構造に移行します。そこから、ループとif / else制御ロジックを学び、最終的には関数を介して再利用可能なコードを書くことを学びます。

関数の探索を開始すると、最初はかなり威圧的に見えるラムダ関数に出くわします。リスト内包表記と同様に、ラムダ関数を使用すると簡潔なコードを記述できます。多くの場合、定義された関数として数行かかるものは、ラムダ関数を使用して1行で実行できます。

Python関数のレビュー

典型的なPython関数は、特定のタスクを実行するために設計された自己完結型の命令セットです。これらは、コードをより小さく再利用可能なチャンクに分割することでコードを整理できるため、習得して理解することが重要です。大規模なプログラムを作成している場合、関数を利用すると、コードの読み取りとデバッグも容易になります。

Pythonでは、 defキーワードを使用して関数を定義してから、関数本体の実行に影響を与える必要な引数とともに関数に名前を付けます。多くの場合、returnキーワードは、関数を終了し、関数と呼ばれるものに目的の出力を返すために使用されます。関数の例を次に示します。

#python example function
def my_function(string):
     return print(string) 

my_functionのテスト

この例では、引数として文字列my_function を取り、返された出力として文字列を出力します。

ラムダ関数とは何ですか?

Pythonスキルを次のレベルに引き上げるには、正規関数とラムダ関数の両方を習得する必要があります。Lambda関数は、コードを短く簡潔にするのに最適です。これがPythonistaの方法です。構文を確認するためのいくつかの簡単な例を見てから、プロのように見えるラムダ関数の実際の使用例をいくつか見ていきます。

前の例で見たように、通常の関数はdef名前を使用して定義されます。Lambda関数はlambda キーワードを使用して定義され、無名です。これらは名前空間で定義されていない無名関数であり、1回の使用を目的としています。

ラムダ関数について最初に知ったとき、頭を包み込むのは少し難しいようでした。ラムダ関数は任意の数の引数を取ることができますが、式は1つしか持てないため、構文は混乱を招く可能性があります。ここにいくつかの簡単な例があります:

#lambda syntax
#lambda <arguments> : <return expression>#simple example
lambda_example = lambda x: x + x#multiple arguments example
multiple_arguments = lambda x, y, z: (x + y) * z

ラムダ関数の例のテスト

複数の引数がコンマで区切られていることに注意してください。関数を呼び出すとき、呼び出し元は引数を提供します。戻り式は、コロン(:)の後に定義されます。単一の戻り式がありますが、戻り式は単純または複雑にすることができます。それは別の関数である可能性もあり、ラムダ関数をPythonプログラミングツールボックスの強力なツールにします。

ラムダ関数の使用

ラムダを使用してPythonの方法で関数を作成する方法を見てみましょう。以下に、文字列のリストで「two」という単語をチェックする関数があります。単語が文字列に含まれていたかどうかに応じて、TrueまたはFalseとともに文字列のリストを返します。

sentences = ['Sentence one.', 'Sentence two.', 'Sentence three.']def contains_two(text):
    answers = []
    for s in txt:
        if 'two' in s:
            answers.append(True)
        else:
            answers.append(False)
    return zip(answers, text)

contains_two関数のテスト

関数を定義し、forループを使用してリストを調べる代わりに、Pythonのmap()関数とラムダ関数を使用してこれを簡潔に書き直すことができます。

contains_two_lambda = map(lambda x: (True, x) if 'two' in x else (False, x), sentences)

contains_two_lambda関数のテスト

関数は、map()引数として関数とシーケンスを取り、指定されたシーケンスで関数を実行します。map()に渡す関数はラムダ関数であり、定義された関数が1行のコードで実行するのと同じことを実行できます。

Lambda関数は、map()、 reduce()、filter()などの関数とうまく連携します。これらは、関数を引数として受け取る3つの組み込みPython関数です。ラムダ関数は、パンダでうまく機能するため、データの改ざんでも人気がありますdataframes。列と行に論理演算を適用することで、ワンライナーを簡潔にすることができます。

PandasDataFramesでのLambda関数の使用

アナリストとして、私はいつもPandasDataFramesを使用しています。DataFamesは一般的なデータ構造であるため、でデータを変換するためにラムダ関数を使用することがいかに簡単であるかを見てみましょうdataframes。いくつかのモックデータを使用して、単純なパンダデータフレームを作成しましょう。

#import dependencies
import pandas as pd#create dataframe
df = pd.DataFrame({
  'Occupation': ['Data Tech','Sales','Analyst','Engineer'],
  'Name': ['John Smith', 'Jodie Whales', 'Eric Kleppen', 'Richard Heart'],
  'Salary': [50000, 75000, 80000, 100000],
  'YearsAtCompany': [2, 3, 1, 3],})

データフレームの例

newSalary次に、ラムダ関数を使用して呼び出される新しい列を作成しましょう。列に基づいてYearsAtCompany昇給を行い、人の新しい給​​与がどうなるかを確認したい場合は、前の例でapply()使用したのと同様の関数を使用できます。map()

df['newSalary'] = 
df['Salary'].apply(lambda x: x * (1 + df['YearsAtCompany']/10))

newSalary列を確認しています

apply()この関数はラムダ関数を引数として取り、列の各行に関数を適用することに注意してくださいSalary 。ラムダ関数の式は、YearsAtCompanyを使用してレイズのサイズを決定します。

まとめ

プロのようにPythonを書くには練習が必要なので、ラムダ関数のような新しい概念に恐れを感じても心配しないでください。構文は奇妙に見えますが、ラムダ関数を使用すると、論理演算を適用するのに最適な簡潔な1回限りの関数を記述できます。

実行できる式は1つだけですが、式は複雑で、別の関数を含めることもできます。Lambda関数は、Pandas DataFramesのようなデータ構造でさえも、一連のデータでうまく機能します。 

このストーリーは元々https://betterprogramming.pub/become-a-python-programmer-what-are-lambda-functions-1de065686edfで公開されました

#python #lambda #programmers 

Gordon  Matlala

Gordon Matlala

1617875400

Adding Code to AWS Lambda, Lambda Layers, and Lambda Extensions Using Docker

2020 was a difficult year for all of us, and it was no different for engineering teams. Many software releases were postponed, and the industry slowed its development speed quite a bit.

But at least at AWS, some teams released updates out of the door at the end of the year. AWS Lambda received two significant improvements:

  • AWS Lambda Extensions; and
  • Support of Docker images for your functions.

With these two new features and Lambda Layers, we now have three ways to add code to Lambda that isn’t directly part of our Lambda function.

The question is now: when should we use what?

In this article, I try to shine some light on the Lambda Layers, Lambda Extensions, and Docker image for Lambda.

First things first. All these Lambda features can be used together. So if you think about where to put your code, at least your decisions aren’t mutually exclusive. You can upload a Docker image and attach a regular Lambda Layer and a Lambda Extension. The same is possible if your Lambda function is based on a ZIP archive.

What does this all mean? Keep reading and find out.

#aws #aws-lambda #serverless #devops #docker #lambda