机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

685-杜同学

发表文章数:68

首页 » 数据科学库 » 正文

Pandas核心数据结构

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

Series

Series 是一维带标签的数组,数组里可以放任意的数据(整数,浮点数,字符串,Python Object)。其基本的创建函数是:

s = pd.Series(data, index=index)

其中 index 是一个列表,用来作为数据的标签。data 可以是不同的数据类型:

  • Python 字典
  • ndarray 对象
  • 一个标量值,如 5

从 ndaray 创建

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

从字典创建

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

从标量创建

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

Series 是类 ndarray 对象

熟悉 numpy 的同学对下面的操作应该不会陌生。我们在 numpy 简介里也介绍过下面的索引方式。

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

Series 是类字典对象

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

标签对齐操作

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

name属性

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

DataFrame

DataFrame 是二维带行标签和列标签的数组。可以把 DataFrame 想你成一个 Excel 表格或一个 SQL 数据库的表格,还可以相像成是一个 Series 对象字典。它是 Pandas 里最常用的数据结构。

创建 DataFrame 的基本格式是:

df = pd.DataFrame(data, index=index, columns=columns)

其中 index 是行标签,columns 是列标签,data 可以是下面的数据:

  • 由一维 numpy 数组,list,Series 构成的字典
  • 二维 numpy 数组
  • 一个 Series
  • 另外的 DataFrame 对象

从字典创建

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

从结构化数据中创建

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

从字典列表创建

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

从元组字典创建

了解其创建的原理,实际应用中,会通过数据清洗的方式,把数据整理成方便 Pandas 导入且可读性好的格式。最后再通过 reindex/groupby 等方式转换成复杂数据结构。

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

从 Series 创建

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

特性:

列选择/增加/删除

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

使用 assign() 方法来插入新列

更方便地使用 methd chains 的方法来实现

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

索引和选择

对应的操作,语法和返回结果

  • 选择一列 -> df[col] -> Series
  • 根据行标签选择一行 -> df.loc[label] -> Series
  • 根据行位置选择一行 -> df.iloc[label] -> Series
  • 选择多行 -> df[5:10] -> DataFrame
  • 根据布尔向量选择多行 -> df[bool_vector] -> DataFrame

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

数据对齐

DataFrame 在进行数据计算时,会自动按行和列进行数据对齐。最终的计算结果会合并两个 DataFrame。

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

使用 numpy 函数

Pandas 与 numpy 在核心数据结构上是完全兼容的

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

Panel

Panel 是三维带标签的数组。实际上,Pandas 的名称由来就是由 Panel 演进的,即 pan(el)-da(ta)-s。Panel 比较少用,但依然是最重要的基础数据结构之一。

  • items: 坐标轴 0,索引对应的元素是一个 DataFrame
  • major_axis: 坐标轴 1, DataFrame 里的行标签
  • minor_axis: 坐标轴 2, DataFrame 里的列标签

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel

 

 

 

拜师教育学员文章:作者:685-杜同学, 转载或复制请以 超链接形式 并注明出处 拜师资源博客
原文地址:《机器学习数据科学包(四)——Pandas基础核心数据结构:Series,DataFrame,Panel》 发布于2020-02-07

分享到:
赞(0) 打赏

评论 抢沙发

评论前必须登录!

  注册



长按图片转发给朋友

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

Vieu3.3主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录