当前位置: 移动技术网 > IT编程>脚本编程>Python > 浅谈Pandas:Series和DataFrame间的算术元素

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

2019年01月08日  | 移动技术网IT编程  | 我要评论

姐夫当场捅死妹夫,蜘蛛女孩,梦幻蛋糕屋窗口化

如下所示:

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间的算术元素就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网