浅谈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判断变量是否已经定义的方法
Aug 18 Python
Python基于time模块求程序运行时间的方法
Sep 18 Python
Python2和Python3中print的用法示例总结
Oct 25 Python
对Python 2.7 pandas 中的read_excel详解
May 04 Python
python日期时间转为字符串或者格式化输出的实例
May 29 Python
python多进程提取处理大量文本的关键词方法
Jun 05 Python
Django 开发调试工具 Django-debug-toolbar使用详解
Jul 23 Python
用Python徒手撸一个股票回测框架搭建【推荐】
Aug 05 Python
python 解决Fatal error in launcher:错误问题
May 21 Python
Python中Pyspider爬虫框架的基本使用详解
Jan 27 Python
PyTorch 如何自动计算梯度
May 23 Python
对Keras自带Loss Function的深入研究
May 25 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实现下载功能的代码
2012/09/29 PHP
php初始化对象和析构函数的简单实例
2014/03/11 PHP
PHP的error_reporting错误级别变量对照表
2014/07/08 PHP
PHP中的流(streams)浅析
2015/07/02 PHP
详解php中curl返回false的解决办法
2019/03/18 PHP
jquery 仿QQ校友的DIV模拟窗口效果源码
2010/03/24 Javascript
从零开始学习jQuery (三) 管理jQuery包装集
2011/02/23 Javascript
js 幻灯片的实现
2011/12/06 Javascript
将json对象转换为字符串的方法
2014/02/20 Javascript
JavaScript+CSS实现仿天猫侧边网页菜单效果
2015/08/25 Javascript
js学习阶段总结(必看篇)
2016/06/16 Javascript
JS正则表达式验证密码格式的集中情况总结
2017/02/23 Javascript
深入解析js轮播插件核心代码的实现过程
2017/04/14 Javascript
JavaScript基础之流程控制语句的用法
2017/08/31 Javascript
JS 使用 window对象的print方法实现分页打印功能
2018/05/16 Javascript
vue-cli配置环境变量的方法
2018/07/09 Javascript
详解js中let与var声明变量的区别
2020/04/05 Javascript
深入了解JavaScript 的 WebAssembly
2019/06/15 Javascript
微信小程序入口场景的问题集合与相关解决方法
2019/06/26 Javascript
微信小程序用户授权、位置授权及获取微信绑定手机号
2019/07/18 Javascript
JS document文档的简单操作完整示例
2020/01/13 Javascript
npm qs模块使用详解
2020/02/07 Javascript
JavaScript实现简单的图片切换功能(实例代码)
2020/04/10 Javascript
Python多线程实例教程
2014/09/06 Python
Python找出最小的K个数实例代码
2018/01/04 Python
12个步骤教你理解Python装饰器
2019/07/01 Python
Python 调用 Windows API COM 新法
2019/08/22 Python
keras模型可视化,层可视化及kernel可视化实例
2020/01/24 Python
最受欢迎的自我评价
2013/12/22 职场文书
公共机构节能宣传周活动总结
2014/07/09 职场文书
个人原因辞职信模板
2015/05/13 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
2015大学迎新晚会主持词
2015/07/16 职场文书
2016年6月份红领巾广播稿
2015/12/21 职场文书
MySQL 数据丢失排查案例
2021/05/08 MySQL
Linux系统下安装PHP7.3版本
2021/06/26 PHP