pandas数据处理基础——基础加减乘除的运算规则
上周公司对所有员工封闭培训了一个星期,期间没收手机,基本上博客的更新都停止了,尽管培训时间不长,但还是有些收获,不仅来自于培训讲师的,更多的是发现自己与别人的不足,一个优秀的人不仅仅是自己专业那块的精通,自己还有很多内功和外功需要修炼,人生很长,拼的是坚持。培训回来了就开始马不停蹄的复习自己之前学的东西,业精于勤荒于嬉是非常有道理的,不希望自己中间的断档就将博客给彻底荒废了。上一篇复盘的是选择行和列,这是利用python操作数据的基础和根本。本文将总结基本的算术运算规则。
算术运算
对于两个对象进行加减乘除的算数运算时,如果两个对象有不同的索引对,那么运算结果的索引就是该索引对的并集。而结果集索引对应的值是两个对象相同索引对应的值相加减乘除,不同的索引对应的值统一为NaN。比方说张三有梨子3个,苹果2个;李四有橘子1个,猕猴桃3个,苹果1个,梨子5个。那么张三和李四加起来的结果就是梨子8个,苹果3个,橘子未知,猕猴桃未知。这里的水果名即为索引,两者相同索引对应的值会相加,而不同索引对应的值将为NaN。
1.1 Series之间的运算
示例:

1.2 DataFrame之间的运算
示例:


从上述例子上看可以发现DataFrame之间运算时,是行索引和列索引一起进行对齐操作,运算后的结果集的行索引是两者行索引的并集,结果集的列索引是两者列索引的并集。而行列对应的数值是df1和df2中相同行索引和相同列索引定位到的那个数值相加,如果两者的行索引或者列索引不相同数值将填充为NaN.
1.3 DataFrame与Series之间的运算
示例:


从以上示例可以看出两个相减时是从df1中匹配m中的列索引,匹配上了的就将df1的每一行都减去对应m的值。比如m中a,d是与df1相同的,那么df1的a,d两列的每一行都要减去m的a,d两个值。df1其他没匹配上的填充为NaN。
如果是按照行匹配,每列来运算,则利用轴标记来指定。
示例:

axis=0表示希望匹配的轴是行,按照行来匹配,减去每列的数值。
pandas数据处理基础——基础加减乘除的运算规则的更多相关文章
- python基础-基础知识(包括:函数递归等知识)
老男孩 Python 基础知识练习(三) 1.列举布尔值为 False 的值空,None,0, False, ", [], {}, () 2.写函数:根据范围获取其中 3 和 7 整除的所有 ...
- pandas数据处理基础——筛选指定行或者指定列的数据
pandas主要的两个数据结构是:series(相当于一行或一列数据机构)和DataFrame(相当于多行多列的一个表格数据机构). 本文为了方便理解会与excel或者sql操作行或列来进行联想类比 ...
- Pandas与Matplotlib基础
pandas是Python中开源的,高性能的用于数据分析的库.其中包含了很多可用的数据结构及功能,各种结构支持相互转换,并且支持读取.保存数据.结合matplotlib库,可以将数据已图表的形式可视化 ...
- pandas网页操作基础
ipython notebook 命令行输入ipython notebook 此时,浏览器会自动运行并打开ipython网页 基本操作 如上图所示,新建一个项目 导入相关模块,建立一个数据集 制造数据 ...
- pandas数据结构之基础运算笔记
import pandas as pd import numpy as np s = pd.Series([1,3,5,6,8],index=list('acefh')) s.index # 读取行索 ...
- 基于pandas数据预处理基础操作
# -*- coding: utf-8 -*- import numpy as np import pandas as pd #一.创建数据 #1.通过传递一个list对象来创建一个Series,pa ...
- R实战 第三篇:数据处理(基础)
数据结构用于存储数据,不同的数据结构对应不同的操作方法,对应不同的分析目的,应选择合适的数据结构.在处理数据时,为了便于检查数据对象,可以通过函数attributes(x)来查看数据对象的属性,str ...
- pandas学习2(基础操作)
- Python3基础 运算 加减乘除、取余数
Python : 3.7.3 OS : Ubuntu 18.04.2 LTS IDE : pycharm-community-2019.1.3 ...
随机推荐
- HDU 4633 Who's Aunt Zhang (2013多校4 1002 polya计数)
Who's Aunt Zhang Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- 最佳实践: 勿在 Servlet 中实现 SingleThreadModel
摘要 请不要实现 SingleThreadModel 接口.这种实践将导致 Web 容器创建多个 servlet 实例:即为每个用户创建一个实例.对于任何大小的应用程序,这种实践都将导致严重的性能问题 ...
- C语言基本数据类型简介
1.概述 C 语言包含的数据类型如下图所示: 2.各种数据类型介绍 2.1整型 整形包括短整型.整形和长整形. 2.1.1短整形 short a=1; 2.1.2整形 一般占4个字节(32位),最高位 ...
- 使用Hexo快速搭建一个博客,并部署到github
本文旨在记录一下我在通过hexo搭建一个博客,并将其部署在github上面的过程,也供我自己在以后的使用过程中能够快速学习和参考.需要看更详细或者官方文档的可以点击Hexo官方文档进行查看. 安装前提 ...
- Sata win7 热插拔(AHCI)
主板支持AHCI,把sata模式改成AHCI,在bios打开SATA热插拔开关 开启AHCI,需要修改注册表:HKEY_LOCAL_MACHINE\System\CurrentControlSet\S ...
- Hibernate 注解@Column(nullable = false) 和 @Column(unique=true)
unique=true是指这个字段的值在这张表里不能重复,所有记录值都要唯一,就像主键那样; nullable=false是这个字段在保存时必需有值,不能还是null值就调用save去保存入库;
- 一、Instrument之Core Animation工具
一.Instrument 三个方法: (1).按下Command + I打开Instrument; (2).Xcode->product->profile; (3).Xcode->O ...
- yum安装 lnmp (linux+nginx+php7.1+mysql5.7)
1.第一步先更新yum update 2.yum安装nginx安装nginx最新源:yum localinstall http://nginx.org/packages/centos/7/noarch ...
- Git系列三之GitHub使用方法
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub. GitHub 于 2008 年 4 月 10 日正式上线,除了 Git 代 ...
- zend 环境
js智能提示: 安装APTANA组件,最新3.0版本 安装地址:http://download.aptana.com/studio3/plugin/install Aptana 3 不能装 2 的 J ...