教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

Pandas算术运算和数据对齐【Pandas索引操作演示】

更新时间:2021年07月30日16时09分 来源:传智教育 浏览次数:


Pandas执行算术运算时,会先按照索引进行对齐,对齐以后再进行相应的运算,没有对齐的位置会用NaN进行补齐。其中,Series是按行索引对齐的,DataFrame是按行索引、列索引对齐的。

假设有两个Series对象,创建它们的示例代码如下。

In [45]: obj_one = pd.Series(range(10, 13), index=range(3)) 
         obj_one 
Out[45]: 
0  10
1  11
2  12
dtype: int64
In [46]: obj_two = pd.Series(range(20, 25), index=range(5))
         obj_two
Out[46]: 
0  20
1  21
2  22
3  23
4  24
dtype: int32
上述示例中创建了两个Series对象:obj_one和obj_two,从输出结果可以看出,obj_one比obj_two少两行数据。

如果要对obj_one与obj_two进行加法运算,则会将它们按照索引先进行对齐,对齐的位置进行加法运算,没有对齐的位置使用NAN值进行填充,具体代码如下。

In [47]: obj_one + obj_two  # 执行相加运算
Out[47]: 
0  30.0
1  32.0
2  34.0
3   NaN
4   NaN
dtype: float64

如果希望不使用NAN填充缺失数据,则可以在调用add方法时提供fill_value参数的值,fill_value将会使用对象中存在的数据进行补充,具体示例代码如下。

In [48]: obj_one.add(obj_two, fill_value = 0)  # 执行加法运算,补充缺失值
Out[48]: 
0  30.0
1  32.0
2  34.0
3  23.0
4  24.0
dtype: float64

当然其他的算术运算也是类似的,这里就不再过多赘述了。





猜你喜欢:

NumPy常用的数据类型有哪些?

Shell怎样实现定时日志数据采集?【案例展示】

fsimage和edit的区别【大数据面试问题】

传智教育python+大数据开发课程

0 分享到:
和我们在线交谈!