Python-机器学习基础-Pandas

Pandas
  • Pandas介绍
    • pandas概念
      • 开源的数据挖掘库
      • 用于数据的探索
      • 封装了matplotlib,numpy
  • 案列知识点
    • 创建DataFrame
      • pd.DataFrame(ndnarray)
    • 创建日期
      • pd.data_range(start,end,periods,freq)
        • start
          • 开始时间
        • end
          • 结束时间
        • periods
          • 书简跨度
        • fred
          • 统计时间方式
  • DataFrame介绍
    • DataFrame属性
      • 对象.shape()
      • 对象.index()
      • 对象.columns()
      • 对象.values()
      • 对象.T
      • 对象.head()
      • 对象.tail()
    • DataFrame设置索引
      • 修改行列索引
        • 必须整行或者整列去进行修改
      • 重设索引
        • 对象.reset_index()
      • 设置新索引
        • 对象.set_index() 如果设置索引是两个的时候就是multiIndex
  • 基本数据操作
    • 索引操作
      • 直接索引(先列后行)
        • stock_data["列"]["行"]
      • loc(先行后列),索引值
        • stock_data.loc["2018-02-27":"2018-02-23","high"]
      • iloc(先行后列),索引值下标
        • stock_data.iloc[:3,:5]
      • ix(先行后列),混合索引
        • 已经没有这个API了
    • 赋值操作
      • 对象[""]
      • 对象.close
    • 排序
      • dataframe
        • 对象.sort_value(by=,ascending=)
          • by -- 按什么排序
          • ascending -- 升降序
        • 对象.sort_index()
        • 注意:by课以接收多个值,优先按照第一个索引排序 如果相同,按后面的
      • series
        • 对象.sort_values()
        • 对象.sort_index()
  • DataFrame运算
    • 算数运算
      • 直接使用方法
        • add、sub ……
        • 也可以使用符号
    • 逻辑运算
      • 逻辑运算
        • 逻辑运算符<, >, |, &
          • 直接判断
      • 逻辑运算函数
        • 对象.query("")
        • 对象.isin()
    • 统计函数
      • 对象.describe()
      • 统计函数
        • sum
        • mean
          • 中位数
        • ……
        • mode
          • 众数
        • idxmax
          • 最大的索引
        • idxmin
          • 最小的索引
    • 累计统计函数
      • cumsum
        • 计算前1/2/3/.../n个数的和
      • cummax
        • 计算前1/2/3/.../n个数的最大值
      • cummin
        • 计算前1/2/3/.../n个数的最小值
      • cumprod
        • 计算前1/2/3/.../n个数的积
    • 自定义运算
      • apply(func, axis)
        • func -- 自定义函数
    • Pandas画图
      • 对象.plot(x,y,kind)
        • kind
          • line
            • 默认折现图
          • bar
          • barh
            • 条形图旋转
          • hist
          • pie
          • scatter
  • 文件读取与存储
    • csv
      • 读取
        • pd.read_csv
          • 参数:usecols -- 需要哪列
      • 存储
        • 对象.to_csv
          • 参数:columns -- 保存哪列
    • hdf
      • 读取
        • pd.read_hdf()
      • 写入
        • 对象.to_hdf()
        • 注意:保存文件是****.h5
    • json
      • 读取
        • pd.read_json()
      • 写入
        • 对象.to_json()
          • orient -- 按照什么方式读取或者写入
          • lines -- 是否按照行读取和写入
    • 推荐使用hdf5文件
      • 压缩方式,读取效率快
      • 压缩后,节省空间
      • 支持跨平台
  • 高级处理
    • 高级处理-缺失值处理
      • 判断数据是否为NaN
        • np.any(pd.isnull(movie)) -- 如果有一个缺失值,就返回True
        • np.all(pd.notnull(movie)) -- 如果有一个缺失值,就返回False
      • 处理方式
        • 存在缺失值,并且是NaN
          • 删除存在的缺失值:dropna(axis='rows')
            • 不会修改原数据,需要接受返回值
          • 替换缺失值:fillna(value,inplace=True)
            • value:替换的值
            • inplace:True会修该原数据;False不替换修改,生成新的对象。
        • 不是缺失值nan,有默认标记的
          • 对象.replace(to_place)
            • to_repacle -- 替换前的值
            • value -- 替换后的值
    • 高级处理-数据离散化
      • 数据离散化
        • 把一些数据分到某个区间,最后用不同的符号或者数字表达
      • 离散化API
        • pd.qcut() -- 把数据大致分为数量相等的几类
        • pd.cut() -- 自己指定分组间隔
        • 数量统计
          • 对象.value_count()
      • one-hot编码
        • 把数据转换为0,1统计类型
        • 别名:哑变量、热独编码
        • API
          • pd.get_dummies(data,prefix)
            • data:pd.cut或者pd.qcut()后的数据
            • prefix:分组名字
    • 高级处理-数据合并
      • pd.contact()
        • axis=
      • pd.merge(left,right,on,how)
        • left -- 左表
        • right -- 右表
        • on -- 指定键
        • how -- 按照什么方式进行拼接
    • 高级处理-交叉表与透视表
      • 用于探索两列数据之间的关系
      • pd.crosstab()
        • 返回具体数据
      • 对象.pivot_table()
        • 返回占比情况
    • 高级处理-分组和聚合
      • API
        • 对象.groupby()
          • 参数as_index -- 是否进行设置索引
      • 注意
        • 可以对数据进行多次分组需要里面传递一个列表进行完成

 

posted @ 2020-11-03 20:00  DingJie1024  阅读(83)  评论(0编辑  收藏  举报