panda核心数据结构

Series

Series是一维带标签的数组,数组里可以放任意的数据(整数、浮点数、字符串、python Object)等等

创建函数:

  (1)s = pd.Series(data,index=index),其中index是一个列表,用来作为数据的标签,如果不指定索引,pandas自动分配整形的索引

  (2)字典创建  s = pd.Series(dict,index = list('abcd')),创建的series对象的索引为字典的key 

性质

Series对象的性质:

  类ndarray对象

  类dict对象

  标签对齐操作

  结论一:series对象可以直接使用ndarray对象方法

 

 

  结论二:series对象可以像python字典对象一样操作

 

  结论三:标签对齐,进行操作时,索引自动对应做处理,如果找不到对应值,则为NaN

DateFrame

  DateFrame是二维带行标签和列标签的数组,可以把DateFrame想象成一个Excel表格或一个sql数据库的表格,还可以想象成一个series对象字典,它是pandas里最常用的数据结构

创建DateFrame对象

df = pd.DateFrame(data,index = index,columns = columns)    其中index是行标签,columns是列标签,data可以是下面的数据结构:

  (1)由一维numpy数组,list,Series构成的字典

  (2)二维numpy数组

  (3)另外的DateFrame对象

字典方式创建:

(1)Series对象构成的字典方式创建:

  (2)列表构成的字典方式创建

  注意:由series对象构成的字典,series元素可以不相等,但列表构成的字典,列表元素必须相等,不然会报错

列表创建

  (1)列表中元素由元组构成

  

  (2)列表中元素由字典构成

 

 从Series创建DataFrame

  注意:series为一维数组,故列索引只能有一列,不然会报错

性质

  先创建一个数组

 (1)查找

 

(2)赋值

(3)删除操作

(4)添加

(5)指定删除并获取结果

(6)指定位置插入

(7)assign在原来对象基础上做操作但不会改变原对象数据结构

Panel

Panel是三维带标签的数组,Pancel比较少用,但依然是最重要的基础数据结构之一.

Panel有三个标签:

  items:坐标轴 0,索引对应的元素是一个DataFrame

  magor_axis:坐标轴1,DataFrame里的行标签

  minor_axis:坐标轴 2,DataFrame里的列标签

创建方式:

  查看各维度索引

转换为DataFrame对象

 

 

 

 

posted @ 2017-07-29 19:36  amchen  阅读(1752)  评论(0编辑  收藏  举报