#### 算术运算
1. 一个数和DataFrame运算、numpy运算 都应用了广播机制 如:df+1,df中每个元素都加了1
2. DataFrame对象与ndarray对象进行运算,应用了广播机制 如: df+arr
3. Series和DataFrame运算,Series 按照Series的index进行运算,所以Series的index的值要与DataFrame的columns的值一致,如果没有对齐则补齐NaN,不是广播。
4. DataFrame之间可以运算,行列索引同时对齐,如果有任何一个对不齐则使用NaN填充。
代码演示:
**一个数和DataFrame运算**
```python
df = pd.DataFrame([[1, 2, 3,4], [4, 5, 6,7], [8, 9, 10,11]], index=['row0', 'row1','row2'], columns=['col0', 'col1', 'col2','col3'])
df+1
```
**DataFrame对象与ndarray对象运算**
```python
df = pd.DataFrame([[1, 2, 3,4], [4, 5, 6,7], [8, 9, 10,11]], index=['row0', 'row1','row2'], columns=['col0', 'col1', 'col2','col3'])
nd = np.ones(3,dtype=np.int32).reshape(-1,1)
df+nd
```
**Series和DataFrame运算**
```python
s = pd.Series(data=[20,30,40,50],index=['col0', 'col1', 'col2','col4'])
df = pd.DataFrame([[1, 2, 3,4], [4, 5, 6,7], [8, 9, 10,11]], index=['row0', 'row1','row2'], columns=['col0', 'col1', 'col2','col3'])
df+s
```
**DataFrame之间运算**
```
df = pd.DataFrame([[1, 2, 3,4], [4, 5, 6,7], [8, 9, 10,11]], index=['row0', 'row1','row2'], columns=['col0', 'col1', 'col2','col3'])
df1 = pd.DataFrame([[1,1,1], [2,2,2], [3,3,3]], index=['row0', 'row1','row2'], columns=['col0', 'col1', 'col4'])
df+df1
```
上面仅仅是演示了加法的操作,当然也可以减法操作哦!
如果喜欢文章请点赞哦!
![比心](./比心.png)
更多关于Python 培训的问题,欢迎咨询千锋教育在线名师,如果想要了解我们的师资、课程、项目实操的话可以点击咨询课程顾问,获取试听资格来试听我们的课程,在线零距离接触千锋教育大咖名师,让你轻松从入门到精通。