#### 算術運算
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 培訓的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項目實操的話可以點擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。