Python数据科学手册-Pandas数据处理之简介
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数据处理之简介的更多相关文章
- Python数据科学手册-Pandas:向量化字符串操作、时间序列
向量化字符串操作 Series 和 Index对象 的str属性. 可以正确的处理缺失值 方法列表 正则表达式. Method Description match() Call re.match() ...
- Python数据科学手册-Pandas:累计与分组
简单累计功能 Series sum() 返回一个 统计值 DataFrame sum.默认对每列进行统计 设置axis参数,对每一行 进行统计 describe()可以计算每一列的若干常用统计值. 获 ...
- Python数据科学手册-Pandas:数值运算方法
Numpy 的基本能力之一是快速对每个元素进行运算 Pandas 继承了Numpy的功能,也实现了一些高效技巧. 对于1元运算,(函数,三角函数)保留索引和列标签 对于2元运算,(加法,乘法),Pan ...
- Python数据科学手册-Pandas:数据取值与选择
Numpy数组取值 切片[:,1:5], 掩码操作arr[arr>0], 花哨的索引 arr[0, [1,5]],Pandas的操作类似 Series数据选择方法 Series对象与一维Nump ...
- Python数据科学手册-Pandas:层级索引
一维数据 和 二维数据 分别使用Series 和 DataFrame 对象存储. 多维数据:数据索引 超过一俩个 键. Pandas提供了Panel 和 Panel4D对象 解决三维数据和四维数据. ...
- Python数据科学手册-Pandas:合并数据集
将不同的数据源进行合并 , 类似数据库 join merge . 工具函数 concat / append pd.concat() 简易合并 合并高维数据 默认按行合并. axis=0 ,试试 axi ...
- 100天搞定机器学习|day45-53 推荐一本豆瓣评分9.3的书:《Python数据科学手册》
<Python数据科学手册>共五章,每章介绍一到两个Python数据科学中的重点工具包.首先从IPython和Jupyter开始,它们提供了数据科学家需要的计算环境:第2章讲解能提供nda ...
- Python数据科学手册
Python数据科学手册(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1KurSdjNWiwMac3o3iLrzBg 提取码:qogy 复制这段内容后打开百度网盘手 ...
- Matplotlib 使用 - 《Python 数据科学手册》学习笔记
一.引入 import matplotlib as mpl import matplotlib.pyplot as plt 二.配置 1.画图接口 Matplotlib 有两种画图接口: (1)一个是 ...
随机推荐
- Selenium指定浏览器路径
ChromeOptions options = new ChromeOptions(); options.setBinary("C:\\Program Files (x86)\\Google ...
- 啥也不是 -「OI 易犯错误整理」
原帖出自 Nefelibata,不过他不想维护,所以就交给 STrAduts 了 awa.因为一些不可抗力,帖主转移至 XSC062.申请置顶! 前言 Nefelibata:因为笔者弱到无法形容,因此 ...
- 【Codeforces1706A】 Another String Minimization Problem
官方标签 贪心.字符串 题目描述 输入 输出 样例输入 6 4 5 1 1 3 1 1 5 2 4 1 1 1 1 1 2 4 1 3 2 7 7 5 4 5 5 5 3 5 样例输出 ABABA B ...
- mybatis-plus时间字段自动填充
时间代码自动填充的2种方式 数据库方式 将数据库字段create_time和update_time设置CURRENT_TIMESTAMP,create_time字段后面不需要勾选更新,update_t ...
- 算法竞赛进阶指南0x14 Hash
组成部分: 哈希函数: 链表 AcWing137. 雪花雪花雪花 因为所需要数据量过于大,所以只能以O(n)的复杂度. 所以不可能在实现的过程中一一顺时针逆时针进行比较,所以采用一种合适的数据结构. ...
- 输出以二叉树表示的算术表达式(严6.51)--------西工大noj
题解 这道题目说的很诡异,其实没有什么把括号补上....仅仅是先序读入,然后中序输出就行了 代码 #include <stdio.h> #include <stdlib.h> ...
- netcore 非注入全局获取配置文件
在netcore开发中,最常见的就是注入,比如想获取appsettings.json的内容,我们就需要去注入,然后在controller里面去获取,但是我们如果想要在service中使用appsett ...
- 一个小 Trick
平方变两次 一个状态 \(S\) 有一个贡献,所有状态 \(S\) 组成集合 \(U\) . 然后我们要统计下面这个东西 \[ans=\sum_{S\in U}f^2(S) \] 然后我们就可以看作是 ...
- 清北学堂 2020 国庆J2考前综合强化 Day5
目录 1. 题目 T1 a 题目描述 Sol T2 b 题目描述 Sol T3 c 题目描述 Sol T4 d 题目描述 Sol 2. 算法 - 贪心 & 数学 1. 贪心 2. 数学 2.1 ...
- Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript来打造属于自己的个性化社交分享系统
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_143 每一个应用程序,其实都会有分享的需求,比如一键分享一篇文章或者一些活动到微博或者微信亦或者是twitter等社交平台,因为人 ...