zoukankan      html  css  js  c++  java
  • [读书笔记] Python数据分析 (五) pandas入门

    pandas: 基于Numpy构建的数据分析库

    pandas数据结构:Series, DataFrame

    Series: 带有数据标签的类一维数组对象(也可看成字典)

    values, index

    缺失数据检测:pd.isnull(), pd.notnull(), Series对象的实例方法

    Series对象本身及其索引都有一个name属性,和pandas其他关键功能关系很密切

    DataFrame: 表格型数据结构,列和行都有索引

    获取DataFrame列:字典标记方式,或者属性方式(frame2['state']/frame2.state)

    获取DataFrame行:ix()方法

    通过索引方式返回的列只是相应的数据视图,而不是副本,Series的Copy方法可以显示地复制列

    DataFrame的index和column也有name属性,可以自己设置

    索引对象:pandas索引对象负责管理轴标签和其他元数据,构建Series或者DataFrame时,所用到的任何数组或者其他序列的标签会被转换成一个Index. Index对象是不可以修改(immutable)的.

    Index属性

    基本功能

    重新索引:创建一个适合新索引的对象reindex()

    指定丢弃对象:drop()

    索引选取和过滤:ix()

    算术运算和数据对齐

    pandas可以对不同索引对象进行算术运算,对不重叠值自动填充NA

    在算术方法中填充值:fill_value

    DataFrame和Series之间的运算:broadcast()

    默认情况下DataFrame和Series之间的算术运算会将Series的索引匹配到DataFrame列,然后沿着行向下传播;如果想匹配行且在列上广播,必须使用算术运算方法

    函数应用和映射

    numpy的ufuncs(元素级数组方法),也可以用于操作pandas对象

    DataFrame的apply()方法,可以将函数应用到行或者列形成的一维数组

    排序和排名

    排序:

    sort_index() 对行或者列的索引排序(按照字典顺序)

    sort_index(by = ) 按照一个或者多个列中值进行排序

    Series按值进行排序, order方法

    排名:

    rank()

    带有重复值的轴索引

    索引的is_unique()属性可以告诉你它的值是否是唯一的

    汇总和计算描述性统计

    sum()

    mean()

    describe()

    描述和汇总统计函数

     相关系数和协方差

    对参数对进行计算得到,Series和DataFrame方法

    唯一值,值计数,以及成员资格

    唯一值:unique()方法

    值计数:value_counts()方法计算一个Series中各个值出现的频率

    成员资格:isin, 用于判断矢量化集合的成员资格,可以选取Series或DataFrame列中数据的子集

    处理缺失数据

    过滤缺失数据:dropna

    对于DataFrame对象,dropna默认丢弃任何含有缺失值的行; dropna(how = 'all') 丢弃全为NA那些行. 

    如果是针对列,传入axis = 1便可

    填充缺失数据:fillna

    传入常数值:所有na被替换为常数值

    传入字典:不同的列填充不同的值

    默认返回新的对象,但是也可以就地修改 inplace = TRUE

    层次化索引:数据重塑和基于分组的操作(透视表)

    stack和unstack

    对DataFrame来说,每条轴都可以有分层索引.

    根据级别进行汇总:DataFrame和Series的描述和汇总统计都用一个level选项. 

    使用列作为行索引,将行索引变为DataFrame的列:set_index() 相反reset_index()

  • 相关阅读:
    unexpected inconsistency;run fsck manually esxi断电后虚拟机启动故障
    centos 安装mysql 5.7
    centos 7 卸载mysql
    centos7 在线安装mysql5.6,客户端远程连接mysql
    ubuntu 14.04配置ip和dns
    centos7 上搭建mqtt服务
    windows eclipse IDE打开当前类所在文件路径
    git 在非空文件夹clone新项目
    eclipse中java build path下 allow output folders for source folders 无法勾选,该如何解决 eclipse中java build path下 allow output folders for source folders 无法勾选,
    Eclipse Kepler中配置JadClipse
  • 原文地址:https://www.cnblogs.com/vincentcheng/p/7989801.html
Copyright © 2011-2022 走看看