this is the nav!
Python Data Science Toolbox (Part 2)
• AI Chat
• Code
• Report
• ## .mfe-app-workspace-kj242g{position:absolute;top:-8px;}.mfe-app-workspace-11ezf91{display:inline-block;}.mfe-app-workspace-11ezf91:hover .Anchor__copyLink{visibility:visible;}Python Data Science Toolbox (Part 2)

Run the hidden code cell below to import the data used in this course.

```.mfe-app-workspace-11z5vno{font-family:JetBrainsMonoNL,Menlo,Monaco,'Courier New',monospace;font-size:13px;line-height:20px;}```# Import the course packages
import pandas as pd
import matplotlib.pyplot as plt

# Import the course datasets

### Explore Datasets

Use the DataFrames imported in the first cell to explore the data and practice your skills!

• Create a `zip` object containing the `CountryName` and `CountryCode` columns in `world_ind`. Unpack the resulting `zip` object and print the tuple values.
• Use a list comprehension to extract the first 25 characters of the `text` column of the `tweets` DataFrame provided that the tweet is not a retweet (i.e., starts with "RT").
• Create an iterable reader object so that you can use `next()` to read `datasets/world_ind_pop_data.csv` in chunks of 20.

### List Comprehension

``````# list comprehension of a simple list

doctor = ['house', 'cuddy', 'chase', 'thirteen', 'wilson']

new_doc = [doc[0] for doc in doctor]

print(new_doc)

# We can build a list comprehension of a single object.

jean = '2350'

new_jean = [j[0] for j in jean]

print(new_jean)
``````
``````# Create list comprehension: squares
squares = [i**2 for i in range(0,9)]

print(squares)

``````
``````matrix = [[col for col in range(0,5)] for row in range(0,5)]

for row in matrix:
print(matrix)``````
``````# Create a list of strings: fellowship
fellowship = ['frodo', 'samwise', 'merry', 'aragorn', 'legolas', 'boromir', 'gimli']

# Create list comprehension: new_fellowship
new_fellowship = [member for member in fellowship if len(member) >= 7]

# Print the new list
print(new_fellowship)``````
``````# Create a list of strings: fellowship
fellowship = ['frodo', 'samwise', 'merry', 'aragorn', 'legolas', 'boromir', 'gimli']

# Create list comprehension: new_fellowship
new_fellowship = [member if len(member) >= 7 else member.replace(member,"") for member in fellowship]

# Print the new list
print(new_fellowship)``````
``````# Create a list of strings: fellowship
fellowship = ['frodo', 'samwise', 'merry', 'aragorn', 'legolas', 'boromir', 'gimli']

# Create dict comprehension: new_fellowship
new_fellowship = {member : len(member) for member in fellowship }

# Print the new dictionary
print(new_fellowship)
``````

### Generator Expressions

Generator Expressions work with () instead of []. The output that we obtain is the same as list comprehensions but in this case is not a list, it is a generator object that allow us to generate different values or lists.

``````# List of strings
fellowship = ['frodo', 'samwise', 'merry', 'aragorn', 'legolas', 'boromir', 'gimli']

# List comprehension
fellow1 = [member for member in fellowship if len(member) >= 7]

# Generator expression
fellow2 = (member for member in fellowship if len(member) >= 7)``````
``print(fellow2)``