<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Pandas Intro
From this tutorial
What is pandas? Why use Pandas?
Pandas is an open source Python Library. Like must coding languages you can manipulate data in a very easy manner. This means that my days almost manually puckering data are behind me, since I moved in to the green fields of programing. But after cleansing the data, you still needed a program to load it. Proprietary good old Stata for me was very user friendly, but it is expensive! Must user friendly options for programs are expensive too. And after going through many months of “trial” and hacking my way in to getting several trials… After even considering buying a pirated copy of the program I decided that it was going to be much easier to just learn Python. 
Data Structures
Pandas has 2 data structures that are built on top of numpy, this makes them faster.
Section | Description
--- | ---
Series | One dimensional Object, simillar to an array. It assigns label indexes to each item
Data Frame | Tabular data structure with rows and coluns
Series
A Series is a one-dimensional object similar to an array, list or a column in a table. It that it has a labeled index for each item. By default, the indexes go from 0-N
Step1:  Series from a dictionary
Step2:  Accesing an item from a series
Step3:  BOOLEAN indexing for selection
Step4:  Not null function
Step5:  Data Frame
To create a DataFrame we can pass a dictionary of lits in to the DataFrame constructor.
<ASSISTANT_TASK:>
Python Code:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
pd.set_option('max_columns', 50)
%matplotlib inline
series = pd.Series([1, "number", 6, "Happy Series!"])
series
Explanation: Pandas Intro
From this tutorial
What is pandas? Why use Pandas?
Pandas is an open source Python Library. Like must coding languages you can manipulate data in a very easy manner. This means that my days almost manually puckering data are behind me, since I moved in to the green fields of programing. But after cleansing the data, you still needed a program to load it. Proprietary good old Stata for me was very user friendly, but it is expensive! Must user friendly options for programs are expensive too. And after going through many months of “trial” and hacking my way in to getting several trials… After even considering buying a pirated copy of the program I decided that it was going to be much easier to just learn Python. 
Data Structures
Pandas has 2 data structures that are built on top of numpy, this makes them faster.
Section | Description
--- | ---
Series | One dimensional Object, simillar to an array. It assigns label indexes to each item
Data Frame | Tabular data structure with rows and coluns
Series
A Series is a one-dimensional object similar to an array, list or a column in a table. It that it has a labeled index for each item. By default, the indexes go from 0-N
End of explanation
dictionary = {'Favorite Food': 'mexican', 'Favorite city': 'Portland', 'Hometown': 'Mexico City'}
favorite = pd.Series(dictionary)
favorite
Explanation: Series from a dictionary:
End of explanation
favorite['Favorite Food']
Explanation: Accesing an item from a series:
End of explanation
favorite[favorite=='mexican']
Explanation: BOOLEAN indexing for selection
End of explanation
favorite.notnull()
favorite[favorite.notnull()]
Explanation: Not null function
End of explanation
data = {'year': [2010, 2011, 2012, 2011, 2012, 2010, 2011, 2012],
        'team': ['Bears', 'Bears', 'Bears', 'Packers', 'Packers', 'Lions', 'Lions', 'Lions'],
        'wins': [11, 8, 10, 15, 11, 6, 10, 4],
        'losses': [5, 8, 6, 1, 5, 10, 6, 12]}
football = pd.DataFrame(data, columns=['year', 'team', 'wins', 'losses'])
football
Explanation: Data Frame
To create a DataFrame we can pass a dictionary of lits in to the DataFrame constructor.
End of explanation
<END_TASK>