Python数据科学手册-Pandas:数值运算方法
Numpy 的基本能力之一是快速对每个元素进行运算
Pandas 继承了Numpy的功能,也实现了一些高效技巧。
- 对于1元运算,(函数,三角函数)保留索引和列标签
- 对于2元运算,(加法,乘法),Pandas 会自动对齐索引进行计算。
通用函数:保留索引


对ser对象或 df对象使用Numpy通用函数,生成的结果是另一个保留索引的Pandas对象。


通用函数: 索引对齐
当Series 或 DataFram对象进行二元计算,会对齐俩个对象的索引
当处理不完整的额数据时,这一点非常方便
Series索引对齐

俩个相除

结果数组索引是:俩个输入数组索引的并集,
对于确实位置的数据,Pandas会用NaN填充,表示此处无数。
DataFrame索引对齐


A + B

行列索引的顺序可以不同。结果的索引会自动按顺序排列。
可以通过fill_value 参数自定义缺失值,注意:fill_value填充在A上,然后与B相加,不是运算之后再填fill_value.

DataFrame 与 Series的运算
需要对一个DataFrame和一个Series运算,行列对齐方式与之前类似, 与Numpy 二维数组与一维数组的运算规则是一样的。
广播。
numpy 二维数组和一维数组计算

默认按行运算。
Pandas也是默认按行运算

按列计算,使用axis参数。

处理缺失值
缺失值三种形式:null NaN NA
识别缺失值的方法:
1)覆盖全局的掩码
2)用一个标签值
Pandas的缺失值
综合考量:Pandas最终选择标签方法表示缺失值。 浮点数据类型的NaN值,以及None对象。
- None: Python对象类型的缺失值
由于None是一个Python对象,所以不能作为任何Numpy/Pandas数组类型的缺失值。
Python中没有定义None和整数之间的加法运算 - NaN:数值类型的缺失值
NaN: not a number. 任何系统中都兼容的特殊浮点数

NaN是一个数据类病毒,会同化和它接触的数据, 进行何种操作,结果都是NaN


Numpy也提供了特殊的累计函数,可以忽略缺失值的影响
np.nansum() nanmin() nanmax()

处理缺失值
- 发现缺失值 isnull() notnull()

isnull() 创建一个布尔类型的掩码标签 缺失值

notnull() 与 isnull()相反
布尔类型掩码数组可以直接作为Series或DataFrame的索引使用

剔除缺失值 dropna()

DataFrame 不太一样哦。

我们没法从datafram单独剔除一个值。要么是整行,要么是整列。
dropna()会剔除任何包含缺失值的整行数据

剔除列,axis=1 or axis = 'columns'

行或列全部是缺失值 剔除使用how=any,

根据缺失值的数量 使用thresh 参数, 行或列中非缺失值的最小数量

填充缺失值 fillna()

使用0来填充缺失值

从前往后填充

从后往前填充

DataFrame一行。只是需要设置坐标轴参数
axis=1 代表行。
axis=0 代表列。 我去。。。。
Python数据科学手册-Pandas:数值运算方法的更多相关文章
- Python数据科学手册-Pandas:向量化字符串操作、时间序列
向量化字符串操作 Series 和 Index对象 的str属性. 可以正确的处理缺失值 方法列表 正则表达式. Method Description match() Call re.match() ...
- Python数据科学手册-Pandas:累计与分组
简单累计功能 Series sum() 返回一个 统计值 DataFrame sum.默认对每列进行统计 设置axis参数,对每一行 进行统计 describe()可以计算每一列的若干常用统计值. 获 ...
- Python数据科学手册-Pandas数据处理之简介
Pandas是在Numpy基础上建立的新程序库,提供了一种高效的DataFrame数据结构 本质是带行标签 和 列标签.支持相同类型数据和缺失值的 多维数组 增强版的Numpy结构化数组 行和列不在只 ...
- 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 ...
- Matplotlib 使用 - 《Python 数据科学手册》学习笔记
一.引入 import matplotlib as mpl import matplotlib.pyplot as plt 二.配置 1.画图接口 Matplotlib 有两种画图接口: (1)一个是 ...
- python书籍推荐:Python数据科学手册
所属网站分类: 资源下载 > python电子书 作者:today 链接:http://www.pythonheidong.com/blog/article/448/ 来源:python黑洞网 ...
随机推荐
- react配置postcss-pxtorem适配
适配移动端操作如下: 安装 postcss-pxtorem .amfe-flexible npm i postcss-pxtorem npm i amfe-flexible amfe-flexible ...
- linux 配置集群需要修改的东西
1. 服务器主机名 vi /etc/hostname 按Esc,然后:wq! ,保存,然后重启电脑 reboot 2.修改IP和mac,也可以设置成自动的,但一般是固定的 cd /etc/syscon ...
- 编程技巧│超实用 nginx 中常见的配置合集
目录 封禁 IP 仅开放内网 负载均衡 列出文件列表 路由转发 开启 gzip 压缩 解决跨域 资源防盗链 Keepalived 提高吞吐量 HTTP 强制跳转 HTTPS 封禁 IP 通过 deny ...
- 01 开发App真机调试问题
逍遥安卓模拟器 :https://juejin.cn/post/7062922018710093831 HBuilderX真机调试插上手机却提示"未检测到手机或浏览器"的问题:ht ...
- 单调栈_Largest Rectangle in a Histogram
题面 https://flowus.cn/xjsc01/share/395ca9dc-315c-4bd5-a942-016709980c03 这里还有很多笔记(归纳好的) https://www.ac ...
- 《Python编程:从入门到实践》第19章笔记:用户/用户注册/身份验证
接上篇django最基本的一些日常用法,这是第19章笔记,希望在做"动手试一试"的时候可以让自己方便参考. 这一章实现了两个功能: 1.让用户能够添加主题Topic和条目Entry ...
- vscode无法调试python2.7版本
概述 好久没有用python2.7版本了,最近有个老的脚本要优化,但是发现vscode无法对脚本调试,特此记录下解决方法. 本地安装有python2和python3,开发过程中,vscode可以随时调 ...
- SpringBoot定时任务 - 集成quartz实现定时任务(单实例和分布式两种方式)
最为常用定时任务框架是Quartz,并且Spring也集成了Quartz的框架,Quartz不仅支持单实例方式还支持分布式方式.本文主要介绍Quartz,基础的Quartz的集成案例本,以及实现基于数 ...
- 内存问题难定位,那是因为你没用ASAN
摘要:ASAN全称:Address Sanitizer,google发明的一种内存地址错误检查器.目前已经被集成到各大编译器中. 本文分享自华为云社区<内存定位利器-ASAN使用小结>,作 ...
- 2019国家集训队论文《整点计数》命题报告 学习笔记/Min25
\(2019\)国家集训队论文<整点计数>命题报告 学习笔记/\(Min25\) 补了个大坑 看了看提交记录,发现\(hz\)的\(xdm\)早过了... 前置知识,\(HAOI\)< ...