浅谈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如何获取系统iops示例代码
Sep 06 Python
Python中关于Sequence切片的下标问题详解
Jun 15 Python
python笔记:mysql、redis操作方法
Jun 28 Python
python如何将图片转换为字符图片
Aug 19 Python
Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS浅析
May 08 Python
pandas dataframe添加表格框线输出的方法
Feb 08 Python
简单了解python元组tuple相关原理
Dec 02 Python
Python装饰器原理与基本用法分析
Jan 07 Python
用Python制作mini翻译器的实现示例
Aug 17 Python
Python 可视化神器Plotly详解
Dec 26 Python
python+selenium自动化实战携带cookies模拟登陆微博
Jan 19 Python
Python制作运行进度条的实现效果(代码运行不无聊)
Feb 24 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
新版PHP极大的增强功能和性能
2006/10/09 PHP
[原创]PHP中通过ADODB库实现调用Access数据库之修正版本
2006/12/31 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
2016/02/26 PHP
PHP数组访问常用方法解析
2020/09/05 PHP
javascript Select标记中options操作方法集合
2008/10/22 Javascript
JavaScript经典效果集锦
2010/07/06 Javascript
jquery ajax学习笔记2 使用XMLHttpRequest对象的responseXML
2011/10/16 Javascript
计算世界完全对称日的js代码,粗糙版
2011/11/04 Javascript
JQuery+DIV自定义滚动条样式的具体实现
2013/06/25 Javascript
javascript如何判断输入的url是否正确
2014/04/11 Javascript
JS文字球状放大效果代码分享
2015/08/19 Javascript
js弹出窗口返回值的简单实例
2016/05/28 Javascript
vue.js入门教程之绑定class和style样式
2016/09/02 Javascript
jQuery validate 验证radio实例
2017/03/01 Javascript
详解使用Typescript开发node.js项目(简单的环境配置)
2017/10/09 Javascript
vue-baidu-map 进入页面自动定位的解决方案(推荐)
2018/04/28 Javascript
webpack4 + react 搭建多页面应用示例
2018/08/03 Javascript
vue+element模态框中新增模态框和删除功能
2019/06/11 Javascript
js实现的格式化数字和金额功能简单示例
2019/07/30 Javascript
JavaScript 空间坐标的使用
2020/08/19 Javascript
vue实现树状表格效果
2020/12/29 Vue.js
基于Django用户认证系统详解
2018/02/21 Python
简单了解python PEP的一些知识
2019/07/13 Python
pytorch 自定义参数不更新方式
2020/01/06 Python
python 在sql语句中使用%s,%d,%f说明
2020/06/06 Python
英国图书音像网站:Hive.co.uk(图书、电子书、DVD、蓝光、音乐CD等)
2017/10/16 全球购物
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
英国Lookfantastic中文网站:护肤品美妆美发购物(英国直邮)
2020/04/27 全球购物
军训的自我鉴定
2013/12/10 职场文书
信息技术专业个人自我评价
2013/12/11 职场文书
利群广告词
2014/03/20 职场文书
小学学雷锋活动总结
2014/04/25 职场文书
家长会开场白和结束语
2015/05/29 职场文书
争做文明公民倡议书
2019/06/24 职场文书
解决Mysql多行子查询的使用及空值问题
2022/01/22 MySQL
Java 通过手写分布式雪花SnowFlake生成ID方法详解
2022/04/07 Java/Android