Pandas基本功能之算数运算和数据对齐、函数应用和映射、排序、排名

本文详细介绍了Pandas的基本操作,包括算术运算和数据对齐,如自动对齐、填充缺失值;函数应用和映射,如NumPy的ufuncs和apply方法;排序功能,如按索引和值排序;以及排名操作,解释了rank方法的各种用法。这些内容有助于理解Pandas如何处理数据并进行复杂计算。
摘要由CSDN通过智能技术生成

1、算术运算和数据对齐

(1)对不同索引的对象进行算数运算

在将对象相加时,如果存在不同的索引对,则结果的索引就是该索引对的并集

s1 = Series([7,2,-2,4],index=['a','b','c','d'])
s2 = Series([-2,3,-1,4,3],index=['a','b','c','f','g'])
s1
s2
s1+s2
Out[17]: 
a    5.0
b    5.0
c   -3.0
d    NaN
f    NaN
g    NaN
dtype: float64

自动的数据对齐操作在不重叠的索引处引入了NA值。缺失值会在算术运算过程中传播。

对于DataFrame,对齐操作会同时发生在上:

df1 = DataFrame(np.arange(9.).reshape((3,3)),columns=list('bcd'),index=['A','B','C'])
df2 = DataFrame(np.arange(12.).reshape((4,3)),columns=list('bde'),index=['A','C','D','E'])
df1
Out[21]: 
     b    c    d
A  0.0  1.0  2.0
B  3.0  4.0  5.0
C  6.0  7.0  8.0

df2
Out[22]: 
     b     d     e
A  0.0   1.0   2.0
C  3.0   4.0   5.0
D  6.0   7.0   8.0
E  9.0  10.0  11.0

df1+df2
Out[23]: 
     b   c     d   e
A  0.0 NaN   3.0 NaN
B  NaN NaN   NaN NaN
C  9.0 NaN  12.0 NaN
D  NaN NaN   NaN NaN
E  NaN NaN   NaN NaN

(2)在算数方法中填充值

在对不同索引的对象进行算数运算时,当一个对象中某个轴标签在另一个对象中找不到时填充一个特殊值(比如0):

使用df1的add方法,传入df2以及一个fill_value参数:

df1.add(df2,fill_value=0)
Out[24]: 
     b    c     d     e
A  0.0  1.0   3.0   2.0
B  3.0  4.0   5.0   NaN
C  9.0  7.0  12.0   5.0
D  6.0  NaN   7.0   8.0
E  9.0  NaN  10.0  11.0

与此类似,在对Series或DataFrame重新索引时,也可以指定一个填充值:

灵活的算术方法
add 用于加法(+)的方法
sub 用于减法(-)的方法
div 用于除法(/)的方法
mul 用于乘法(*)的方法

(3)DataFrame和Series之间的运算

跟NumPy数组一样,DataFrame和Series之间算术运算有规定。

①计算一个二维数组与其某行之间的差

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值