一.pandas引入
from pandas import Series,DataFrame
import pandas as pd
二.pandas的数据结构
1.Series
Series是一种类似一维数组的对象,他由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。
obj = Series([4,7,-5,3])
obj
0 4
1 7
2 -5
3 3
左边是索引,右边是值。
可以通过Series的values和index属性获取其数组表示形式和索引对象。
In [1]: obj.values
Out[1]: array([4,7,-5,3])
In[2]:obj.index
out[2]:Int64Index([0,1,2,3])
自建标记索引:
In[8]:obj2 = Series([4,7,-5,3],index=['d','b','a','c']
out:d 4
b 7
a -5
d 3
可以通过索引取Series中的单个值或一组值:
In: obj2['a']
Out: -5
In: obj2[['c','a','d']]
Out:
c 3
a -s
d 4
运算
obj2[obj2>0]
obj2*2
np.exp(ob2)
通过python字典创建Series:
sdata = {'Ohio':35000,'Twxas':200,}
obj3=Series(sdata)
In:states = ['California','Ohio','Oregon','Texas']
obj4=Series(sdata,index=states)
Out:
California NaN
Ohio 35000
Oregon 16000
Texas 71000
寻找缺失数据
pd.isnull(obj4)
pd.notnull(obj4)
obj4.isnull()
Series对象本身及其索引都有一个name属性。
obj4.name = 'population'
obj4.index.name = 'state'
2.Dataframe
表格型数据结构,含有一组有序的列,每列可以是不同类型。
构建DataFrame:
data = {'state':['O','P','Q'],
'year':[2000,2001,2005],
'pop':[1.5,1.7,1.2]}
frame=DataFrame(data)
frame['state']
frame.year
使用位置访问:
frame.ix['three']
赋值
frame['debt']=16.5