Pandas是在Numpy基础上建立的新程序库,提供了一种高效的DataFrame数据结构

本质是带行标签 和 列标签、支持相同类型数据和缺失值的 多维数组

增强版的Numpy结构化数组

行和列不在只是简单的整数索引,还可以带上标签,

  • 三个基本数据结构

    Series DataFrame Index

Series

Series将一组数据和一组索引绑定在一起

可以通过values 和 index属性获取数据,

与Numpy数据的区别:Numpy数组通过隐式定义的整数索引获取数值,Pandas 的Series用显示定义的索引与数值关联

Series是特殊的字典

字典是一种将任意键映射到一组任意值的数据结构

Series对象是一种将类型键映射到一组类型值 的数据结构, 类型至关重要。

因为有类型信息,所以比Python字典更高效

可以直接使用Python字典创建一个Series对象

  • 和字典不同,Series对象还支持数组形式的操作

创建Series对象

pd.Series(data, index=index)

index是一个可选参数,data参数支持多种数据类型, 可以是列表 或 Numpy数组, index默认值为整数序列

data可以是个标量,创建对象是会重复填充到每个索引上。



data可以是字典,索引是默认的,不排序,老版本的好像对index进行排序了。

每一种形式都可以通过显示指定索引 筛选需要的结果

Pandas的DataFrame对象

也可以作为一个通用型的Numpy数组,也可以看做特殊的Python字典

DataFrame :通用的Numpy数组

Series是 有 灵活索引的一维 数组 , DataFrame是 一种 既有 灵活的行索引,又有灵活列名 的二维数组 。

DataFrame也可以看成 是若干个Series对象。。索引相同。

index属性获取索引标签

DataFrame还有一个columns属性, 是存放列标签的Index对象:

DataFrame :特殊的字典

字典是一个键映射一个值,而DataFrame是 一个列名映射一个Series的数据。

创建DataFrame对象

1)通过单个Series对象创建。DataFrame是一组Series对象的集合



2)通过字典列表创建。 任何元素是字典的列表都可以变成DataFrame



3)通过Series对象常见,开始介绍那样子。

4)通过Numpy二维数组创建



5)通过Numpy结构化数组创建

Pandas的Index对象

Series 和 DataFrame 对象都使用便于引用和调整的 显示索引。

Pandas的Index对象是一个很有趣的数据结构。 可以将它看作是一个 不可变数组 或 有序集合,



1)将Index看作不可变数组



如果修改索引值会报错。对象的不可变性,使得多个DataFrame和数组之间进行索引共享是更加安全

2)将Index看作有序集合

Pandas对象被设计用于实现多操作。 如连接数据集。并集 交集 差集



不过好像不推荐用这种方式了。哈哈

使用对象方法

Python数据科学手册-Pandas数据处理之简介的更多相关文章

  1. Python数据科学手册-Pandas:向量化字符串操作、时间序列

    向量化字符串操作 Series 和 Index对象 的str属性. 可以正确的处理缺失值 方法列表 正则表达式. Method Description match() Call re.match() ...

  2. Python数据科学手册-Pandas:累计与分组

    简单累计功能 Series sum() 返回一个 统计值 DataFrame sum.默认对每列进行统计 设置axis参数,对每一行 进行统计 describe()可以计算每一列的若干常用统计值. 获 ...

  3. Python数据科学手册-Pandas:数值运算方法

    Numpy 的基本能力之一是快速对每个元素进行运算 Pandas 继承了Numpy的功能,也实现了一些高效技巧. 对于1元运算,(函数,三角函数)保留索引和列标签 对于2元运算,(加法,乘法),Pan ...

  4. Python数据科学手册-Pandas:数据取值与选择

    Numpy数组取值 切片[:,1:5], 掩码操作arr[arr>0], 花哨的索引 arr[0, [1,5]],Pandas的操作类似 Series数据选择方法 Series对象与一维Nump ...

  5. Python数据科学手册-Pandas:层级索引

    一维数据 和 二维数据 分别使用Series 和 DataFrame 对象存储. 多维数据:数据索引 超过一俩个 键. Pandas提供了Panel 和 Panel4D对象 解决三维数据和四维数据. ...

  6. Python数据科学手册-Pandas:合并数据集

    将不同的数据源进行合并 , 类似数据库 join merge . 工具函数 concat / append pd.concat() 简易合并 合并高维数据 默认按行合并. axis=0 ,试试 axi ...

  7. 100天搞定机器学习|day45-53 推荐一本豆瓣评分9.3的书:《Python数据科学手册》

    <Python数据科学手册>共五章,每章介绍一到两个Python数据科学中的重点工具包.首先从IPython和Jupyter开始,它们提供了数据科学家需要的计算环境:第2章讲解能提供nda ...

  8. Python数据科学手册

    Python数据科学手册(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1KurSdjNWiwMac3o3iLrzBg 提取码:qogy 复制这段内容后打开百度网盘手 ...

  9. Matplotlib 使用 - 《Python 数据科学手册》学习笔记

    一.引入 import matplotlib as mpl import matplotlib.pyplot as plt 二.配置 1.画图接口 Matplotlib 有两种画图接口: (1)一个是 ...

随机推荐

  1. NC16692 [NOIP2001]求先序排列

    NC16692 [NOIP2001]求先序排列 题目 题目描述 给出一棵二叉树的中序与后序排列.求出它的先序排列.(约定树结点用不同的大写字母表示,长度 ≤ 8). 输入描述 2行,均为大写字母组成的 ...

  2. .NET自定义认证虽然简单,但好用

    前言 有这样一种场景,就是新项目已经集成了认证中心,或者是都用了统一的认证方式(比如现在常用的JWT),这样对于项目之间的对接就显得比较方便,至少在认证这块还是能减少一些工作量的.但当上线的老项目需要 ...

  3. android studio取消设置代理

    看标题感觉就是一个简单的设置,其实只是个大坑啊 https://www.jianshu.com/p/bb6d2bcdd5b5 android studio内虽然设置了 no proxy,但是没起作用, ...

  4. Qucs初步使用指南(不是multism)

    众所周知,Multism是一款强大的电路仿真软件,学习电子电路的同学都会接触到. 但是,这软件不支持Linux.(这就很魂淡了啊) 我的主力机是Linux,不能进行电路仿真成了学习的最大障碍. 使用w ...

  5. 提名 Apache ShardingSphere Committer,说说方法

    文章首发在公众号(龙台的技术笔记),之后同步到博客园和个人网站:xiaomage.info 就在前几天,收到了 Apache ShardingSphere Vote 我成为 Committer 的邮件 ...

  6. 2022年字节跳动基础架构前端实习生凉经(4轮技术面+hr面)

    技术一面 原文链接:https://juejin.cn/post/7120516854203809829 因为我之前的项目经验有开发小程序的,所以一开始就问了小程序的问题 1.小程序onload和on ...

  7. STC8H开发(十四): I2C驱动RX8025T高精度实时时钟芯片

    目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...

  8. 2022-7-13 java_1 第七组 刘昀航

    @ 目录 前言 一.一些基本的指令 二.java 1.java的三个版本 2.java特点 3.运行一个java程序 三.java的数据类型 1.java基本数据类型 2.强制转换的原理 3.八种基本 ...

  9. 彻底理解DDS(信号发生器)的fpga实现(verilog设计代码)

    DDS(Direct Digital Synthesis)是一种把一系列数字信号通过D/A转换器转换成模拟信号的数字合成技术. 它有查表法和计算法两种基本合成方法.在这里主要记录DDS查表法的fpga ...

  10. 使用Hexo建立一个轻量、简易、高逼格的博客

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_93 在之前的一篇文章中,介绍了如何使用Hugo在三分钟之内建立一个简单的个人博客系统,它是基于go lang的,其实,市面上还有一 ...