<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
Step1:  Part 1
Step2:  pandas is an open source, BSD-licensed library providing high-performance, 
easy-to-use data structures and data analysis tools for the Python programming language.
http
Step3:  A pandas Series, like a list, doesn't have to be homogenous.
Step4:  The index of a Series can be arbitrary as well.
Step5:  Multiple Series objects can be clubbed together to make a pandas DataFrame. The pandas DataFrame is similar to the data.frame object in R.
Step6:  Think of pandas DataFrames as dicts of Series. Almost all operations that are valid on a Python dictionary will work on a pandas DataFrame.
Step7:  Index Objects
Index objects available in Pandas
<ASSISTANT_TASK:>
Python Code:
----------------------------------------------------------------------
Filename : 01_basic_data_structs.py
Date     : 12th Dec, 2013
Author   : Jaidev Deshpande
Purpose  : To get started with basic data structures in Pandas
Libraries: Pandas 0.12 and its dependencies
----------------------------------------------------------------------
Explanation: Part 1: Data Structures in Pandas
End of explanation
# imports
import pandas as pd
from math import pi
s = pd.Series(range(10))
print(s)
print(s[5])
Explanation: pandas is an open source, BSD-licensed library providing high-performance, 
easy-to-use data structures and data analysis tools for the Python programming language.
http://pandas.pydata.org
There are many useful objects in Pandas:
Series
DataFrame
Panel
TimeSeries
Series and DataFrame
End of explanation
s = pd.Series(['foo', None, 3+4j])
Explanation: A pandas Series, like a list, doesn't have to be homogenous.
End of explanation
inds = ['bar',1, (1, 2)]
s.index = inds
print(s['bar'], s[1], s[(1, 2)])
Explanation: The index of a Series can be arbitrary as well.
End of explanation
s1 = pd.Series(range(10))
s2 = pd.Series(range(10,20))
df = pd.DataFrame({'A':s1,'B':s2})
df.head()
Explanation: Multiple Series objects can be clubbed together to make a pandas DataFrame. The pandas DataFrame is similar to the data.frame object in R.
End of explanation
df['C'] = [str(c) for c in range(20, 30)]
print(df.head())
print(df['C'])
del df['A']
print(df.head(10))
df.update({'B': range(50,60)})
print(df.head())
Explanation: Think of pandas DataFrames as dicts of Series. Almost all operations that are valid on a Python dictionary will work on a pandas DataFrame.
End of explanation
df.index
Explanation: Index Objects
Index objects available in Pandas:
Index        : The most general Pandas index, often created by default
Int64Index   : Specialized index for integer values
MultiIndex   : Hierarchical index
DatetimeIndex: Nanosecond timestamps that can be used as indexes
PeriodIndex  : Specialized indices for timespans
End of explanation
<END_TASK>