美文网首页
python数据分析(五)--Pandas

python数据分析(五)--Pandas

作者: 五秋木 | 来源:发表于2017-12-22 12:53 被阅读0次
  1. Series类型:由一组数据与之相对应的索引组成
    使用:(python列表创建)
    自动索引:d=pd.Series(range(20))
    自定义索引:b=pd.Series([9,8,7,6],index=['a','b','c','d'])
    自动索引和自定义索引并存,但不能混用
    创建Series

    • 标量值:s=pd.Series(25,index=['a','b','c'])
    • 字典类型:d=pd.Series({'a': 9,'b': 8})
    • ndarray:n=pd.Series(np.arange(5))或者n=pd.Series(np.arange(5),index=np.arange(9,4,1))
      基本操作b是一个Series类型
    • b.index得到索引值
    • b.values得到数据值
    • np.exp(b) 只对b的value部分计算
    • 对齐操作:Series+Series
      例如:a=pd.Series([1,2,3],['c','d','e'])b=pd.Series([9,8,7,6],['a','b','c','d'])-->a+b结果中存在的相加,不存在的直接为NaN
      修改后立即生效
  2. DataFrame类型
    表格型数据类型,每列值类型可能不同。既有行索引,又有列索引。
    创建DataFrame

    • 二维ndarray对象d=pd.DataFrame(np.arange(10).reshape(2,5))
    • 从一维ndarray对象字典创建
      dt={'one':pd.Series([1,2,3],index=['a','b','c']),'two':pd.Series([9,8,7,6],index=['a','b','c','d'])}
      d=pd.DataFrame(dt)
    • 列表类型的字典创建
      dl={'one':[1,2,3,4],'two':[9,8,7,6]}
      d=pd.DataFrame(dl,index=['a','b','c','d'])
      操作:
      获取一列元素:d['列标签']
      获取一行元素:d.ix['行号']
      获取某个元素:d['列号']['行号']
      重新索引:增加和重排--reindex
      在行方向重排:d=d.reindex(index=['d','c','b','a'])
      在纵向上重排:d=d.reindex(columns=['城市','同比'...])
      重新索引
      增加新列:newc=d.columns.insert(4,'新增')newd=d.reindex(columns=new,fill_value=200)
      Series与DataFrame的索引都是Index类型,Index对象不可修改 索引类型的常用方法 删除指定索引对象
      .drop()能够删除Series和DataFrame指定行或列索引、
      删除行:a.drop('c1') a.drop(['c1','c2'])
      删除列:a.drop('同比',axis=1)
  3. 运算

    • 算术运算(四则运算):根据索引运算,二维和一维、一维和零维间为广播运算,产生的运算结果为浮点型
    • 算术运算的另一种形式--【.add(d,argws) .sub(d,argws) .mul(d,argws) .div(d,argws)】
      例如:a.add(b,fill_value=100) 即a+b,不存在的部分使用100填充相加
    • 不同维运算,其结果发生在行方向上(轴1),可指定axis=0使其发生在轴0上运算。
    • 比较运算--比较运算只能比较相同索引的元素,不进行补齐,二维和一维、一维和零维间为广播运算,采用大于、小于、大于等于、等于、不等于产生布尔对象。多维之间的比较尺寸相同,不同会报错

相关文章

网友评论

      本文标题:python数据分析(五)--Pandas

      本文链接:https://www.haomeiwen.com/subject/zzjzwxtx.html