浅谈Pandas:Series和DataFrame间的算术元素


Posted in Python onDecember 22, 2018

如下所示:

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

一、Series与Series

s1 = Series([1,3,5,7],index=['a','b','c','d'])
s2 = Series([2,4,6,8],index=['a','b','c','e'])

索引对齐项相加,不对齐项的值取NaN

s1+s2
1
a  3.0
b  7.0
c 11.0
d  NaN
e  NaN
dtype: float64

二、DataFrame与DataFrame

data1 = {'水果':['苹果','梨','草莓'],
  '数量':[3,2,5],
  '价格':[10,9,8]}
data2 = {'数量':[3,2,5,6],
  '价格':[10,9,8,7]}
df1 = DataFrame(data1)
df2 = DataFrame(data2)

在行和列上同时对齐后进行计算,如果找不到对应项则取NaN

print(df1*df2)
价格 数量 水果
0 100.0 9.0 NaN
1 81.0 4.0 NaN
2 64.0 25.0 NaN
3 NaN NaN NaN

三、Series与DataFrame

1.利用广播实现DataFrame与某行的运算

print(df2+df2.iloc[0]) # 将第0行加到所有行上
价格 数量
0 20 6
1 19 5
2 18 8
3 17 9

2.利用广播实现DataFrame与某列的运算(指定轴axis=0)

print(df2.sub(df2.iloc[:,0],axis=0))
价格 数量
0 0 -7
1 0 -7
2 0 -3
3 0 -1

3.运算时如果无法对齐,则填充NaN

s = Series([1,1,1],index=['数量','价格','重量'])
print(df2+s)
价格 数量 重量
0 11 4 NaN
1 10 3 NaN
2 9 6 NaN
3 8 7 NaN

以上这篇浅谈Pandas:Series和DataFrame间的算术元素就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现猜数字游戏(无重复数字)示例分享
Mar 29 Python
python实现跨文件全局变量的方法
Jul 07 Python
使用Python压缩和解压缩zip文件的教程
May 06 Python
Python中类型检查的详细介绍
Feb 13 Python
Python生成数字图片代码分享
Oct 31 Python
python实现xlsx文件分析详解
Jan 02 Python
Python使用 Beanstalkd 做异步任务处理的方法
Apr 24 Python
Python3实现的爬虫爬取数据并存入mysql数据库操作示例
Jun 06 Python
python 在屏幕上逐字显示一行字的实例
Dec 24 Python
Python 为什么推荐蛇形命名法原因浅析
Jun 18 Python
keras K.function获取某层的输出操作
Jun 29 Python
python实现发送邮件
Mar 02 Python
对Python3.x版本print函数左右对齐详解
Dec 22 #Python
对pandas的算术运算和数据对齐实例详解
Dec 22 #Python
Python使用pandas对数据进行差分运算的方法
Dec 22 #Python
利用arcgis的python读取要素的X,Y方法
Dec 22 #Python
对python 读取线的shp文件实例详解
Dec 22 #Python
Python装饰器基础概念与用法详解
Dec 22 #Python
python 文本单词提取和词频统计的实例
Dec 22 #Python
You might like
Yii的CDbCriteria查询条件用法实例
2014/12/04 PHP
Smarty简单生成表单元素的方法示例
2016/05/23 PHP
PHP中call_user_func_array回调函数的用法示例
2016/11/26 PHP
[原创]js与自动伸缩图片 自动缩小图片的多浏览器兼容的方法总结
2007/03/12 Javascript
javascript 面向对象编程基础:封装
2009/08/21 Javascript
js检测输入内容全为空格的方法
2014/05/03 Javascript
Js实现网页键盘控制翻页的方法
2014/10/30 Javascript
2014 年最热门的21款JavaScript框架推荐
2014/12/25 Javascript
分享JavaScript与Java中MD5使用两个例子
2015/12/23 Javascript
Javascript 创建类并动态添加属性及方法的简单实现
2016/10/20 Javascript
Webpack+Vue如何导入Jquery和Jquery的第三方插件
2017/02/20 Javascript
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
强大的JavaScript响应式图表Chartist.js的使用
2017/09/13 Javascript
使用命令行工具npm新创建一个vue项目的方法
2017/12/27 Javascript
vue自定义全局共用函数详解
2018/09/18 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
用npm-run实现自动化任务的方法示例
2019/01/14 Javascript
微信小程序用户授权,以及判断登录是否过期的方法
2019/05/10 Javascript
layui监听下拉选框选中值变化的方法(包含监听普通下拉选框)
2019/09/24 Javascript
Vue结合路由配置递归实现菜单栏功能
2020/06/16 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
SpringBoot+Vue 前后端合并部署的配置方法
2020/12/30 Vue.js
Win10下Python环境搭建与配置教程
2016/11/18 Python
pycharm中连接mysql数据库的步骤详解
2017/05/02 Python
Python实现爬取亚马逊数据并打印出Excel文件操作示例
2019/05/16 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
2020/03/19 Python
澳大利亚票务和娱乐市场领导者:Ticketmaster
2017/03/03 全球购物
全球性的奢侈品梦工厂:Forzieri(福喜利)
2019/02/20 全球购物
工地安全标语
2014/06/07 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
新课培训心得体会
2014/09/03 职场文书
物业工程部经理岗位职责
2015/04/09 职场文书
教师节表彰会主持词
2015/07/06 职场文书
成功的商业计划书这样写才最靠谱
2019/07/12 职场文书
Java时间工具类Date的常用处理方法
2022/05/25 Java/Android