# Programming Essentials Python - Map Reduce Libraries - Projecting data using map

Projecting Data using map

Description
Learn how to project data using the map function in Python to transform elements in an iterable based on specified logic. Follow step-by-step instructions to apply the concepts discussed in the article and practice hands-on tasks to enhance your understanding.

Explanation for the video

Put a place holder for the video here with text so that I can replace as part of the automation

## Key Concepts Explanation

### Key Concept 1

The `map` function can be used on top of an `iterable` to return a new `iterable` with elements transformed based on specified logic. Here is an example:

``````numbers = [1, 2, 3, 4]
squared = map(lambda x: x**2, numbers)
list(squared)
``````

### Key Concept 2

The `map` function takes transformation logic and an iterable as arguments. We can pass the transformation logic either as a regular function or a lambda function. Here is an example:

``````names = ['Alice', 'Bob', 'Charlie']
uppercase_names = map(lambda name: name.upper(), names)
list(uppercase_names)
``````

Practice the following hands-on tasks to apply the concepts of the `map` function:
1. Given a list of numbers, create a new list where each number is squared using the `map` function.
2. Given a list of strings, create a new list where each string is capitalized using the `map` function.
In this article, we explored how to use the `map` function in Python to project data and transform elements in an iterable. By practicing the hands-on tasks and experimenting with different transformation logics, you can further enhance your understanding of this powerful function. Remember to engage with the community for additional support and learning opportunities.