浅谈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 相关文章推荐
Django中更新多个对象数据与删除对象的方法
Jul 17 Python
常见python正则用法的简单实例
Jun 21 Python
Python使用try except处理程序异常的三种常用方法分析
Sep 05 Python
python进行文件对比的方法
Dec 24 Python
python使用BeautifulSoup与正则表达式爬取时光网不同地区top100电影并对比
Apr 15 Python
python sklearn常用分类算法模型的调用
Oct 16 Python
python GUI库图形界面开发之PyQt5控件QTableWidget详细使用方法与属性
Feb 25 Python
jupyter lab文件导出/下载方式
Apr 22 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
Jun 06 Python
python 对xml解析的示例
Feb 27 Python
Python爬虫中urllib3与urllib的区别是什么
Jul 21 Python
Python采集壁纸并实现炫轮播
Apr 30 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
让你的WINDOWS同时支持MYSQL4,MYSQL4.1,MYSQL5X
2006/12/06 PHP
PHP4与PHP5的时间格式问题
2008/02/17 PHP
php中防止SQL注入的最佳解决方法
2013/04/25 PHP
跟我学Laravel之请求与输入
2014/10/15 PHP
php 使用file_get_contents读取大文件的方法
2014/11/13 PHP
php程序员应具有的7种能力小结
2014/11/27 PHP
深入浅析php中sprintf与printf函数的用法及区别
2016/01/08 PHP
php中简单的对称加密算法实现
2017/01/05 PHP
laravel 解决crontab不执行的问题
2019/10/22 PHP
PHP 实现缩略图
2021/03/09 PHP
JavaScript 对象、函数和继承
2009/07/07 Javascript
javascript中的if语句使用介绍
2013/11/20 Javascript
探讨javascript是不是面向对象的语言
2013/11/21 Javascript
JQuery表单验证插件EasyValidator用法分析
2014/11/15 Javascript
JavaScript简单下拉菜单特效
2016/09/13 Javascript
angularjs定时任务的设置与清除示例
2017/06/02 Javascript
Vue实现百度下拉提示搜索功能
2017/06/21 Javascript
MUI顶部选项卡的用法(tab-top-webview-main)详解
2017/10/08 Javascript
Vue实现背景更换颜色操作
2020/07/17 Javascript
[46:20]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS BO3 第二场 1月22日
2021/03/11 DOTA
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
Python的argparse库使用详解
2018/10/09 Python
Python脚本修改阿里云的访问控制列表的方法
2019/03/08 Python
Python opencv实现人眼/人脸识别以及实时打码处理
2019/04/29 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
2019/06/27 Python
python json 递归打印所有json子节点信息的例子
2020/02/27 Python
python实现小程序推送页面收录脚本
2020/04/20 Python
CSS3 透明色 RGBA使用介绍
2013/08/06 HTML / CSS
2014年自我评价
2014/01/04 职场文书
演讲稿开场白
2014/01/13 职场文书
市场营销战略计划书
2014/05/06 职场文书
爱国演讲稿400字
2014/05/07 职场文书
2015年采购员工作总结
2015/04/27 职场文书
音乐会主持人开场白
2015/05/28 职场文书
Python实现学生管理系统(面向对象版)
2021/06/24 Python