前面我们已经介绍了Pandas中的Series类型和DataFrame类型。那么运算自然分为三种。Series与自身,DataFrame与自身,Series与DataFrame。
同一种类的运算:
算术运算法则:
DataFrame算术运算根据行列索引,补齐后运算,运算默认产生浮点数。补齐时缺项填充NaN。Series类似。
这里DataFrame更复杂, 以DtaFrame为例。
若想要补全NaN,则使用.add()方法。其他运算同理,还可以使用方法来运算,如div,mul,add,sub。
不同类型的运算(广播运算):
二维与一维,一维与零维之间运算为广播运算。
例如一维与零维进行加法运算,为零维数据与一维数据每一个相加。Series是一维数据,DataFrame是二维数据,二者进行运算为广播运算Series广播运算默认在0轴上。
这里补充一下轴的概念,横向为1轴方向,纵向为0轴方向。默认广播运算在1轴方向。具体见实例。
比较运算:
比较运算是一种比较特殊的运算,其实也不特殊,只是返回的是BOOL类型的变量而已。但是他多了一些限制。
1:a,b两个DataFrame进行比较,形状,索引必须相同。返回BOOL类型DataFrame。
2:a,b两个Series比较,形状,索引必须相同。返回BOOL类型的Series。