浅谈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正则表达式中的括号匹配问题
Dec 14 Python
Python爬取APP下载链接的实现方法
Sep 30 Python
解决python3 urllib 链接中有中文的问题
Jul 16 Python
python读取csv和txt数据转换成向量的实例
Feb 12 Python
Python列表切片操作实例总结
Feb 19 Python
Python实现钉钉发送报警消息的方法
Feb 20 Python
python里运用私有属性和方法总结
Jul 08 Python
结合OpenCV与TensorFlow进行人脸识别的实现
Oct 10 Python
python脚本监控logstash进程并邮件告警实例
Apr 28 Python
Pytorch十九种损失函数的使用详解
Apr 29 Python
利用python控制Autocad:pyautocad方式
Jun 01 Python
Python利用capstone实现反汇编
Apr 06 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
JAVA/JSP学习系列之七
2006/10/09 PHP
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
php实现点击可刷新验证码
2015/11/07 PHP
PHP+mysql防止SQL注入的方法小结
2019/04/27 PHP
js使用函数绑定技术改变事件处理程序的作用域
2011/12/26 Javascript
JavaScript高级程序设计 阅读笔记(十七) js事件
2012/08/14 Javascript
js实现图片旋转的三种方法
2014/04/10 Javascript
js限制文本框只能输入数字方法小结
2014/06/16 Javascript
ECMAScript6函数剩余参数(Rest Parameters)
2015/06/12 Javascript
jquery事件与绑定事件
2017/03/16 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
JavaScript数据结构之二叉树的查找算法示例
2017/04/13 Javascript
详解如何在React组件“外”使用父组件的Props
2018/01/12 Javascript
再谈Angular4 脏值检测(性能优化)
2018/04/23 Javascript
vue-cli配置环境变量的方法
2018/07/09 Javascript
详解axios中封装使用、拦截特定请求、判断所有请求加载完毕)
2019/04/09 Javascript
node.js 基于cheerio的爬虫工具的实现(需要登录权限的爬虫工具)
2019/04/10 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
Javascript Dom元素获取和添加详解
2019/09/24 Javascript
使用cx_freeze把python打包exe示例
2014/01/24 Python
Python正则表达式如何进行字符串替换实例
2016/12/28 Python
python逆向入门教程
2018/01/15 Python
Python实现带参数与不带参数的多重继承示例
2018/01/30 Python
Python面向对象之反射/自省机制实例分析
2018/08/24 Python
解决sublime+python3无法输出中文的问题
2018/12/12 Python
机器学习实战之knn算法pandas
2019/06/22 Python
详解mac python+selenium+Chrome 简单案例
2019/11/08 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
2019/12/09 Python
python scatter函数用法实例详解
2020/02/11 Python
物流管理专业职业生涯规划书
2014/01/06 职场文书
员工评语大全
2014/01/19 职场文书
转让协议书范本
2014/09/13 职场文书
学校领导四风问题整改措施思想汇报
2014/10/09 职场文书
测量员岗位职责
2015/02/14 职场文书
项目经理岗位职责范本
2015/04/01 职场文书
成绩单家长意见
2015/06/03 职场文书