#### 算術(shù)運(yùn)算
1. 一個(gè)數(shù)和DataFrame運(yùn)算、numpy運(yùn)算 都應(yīng)用了廣播機(jī)制 如:df+1,df中每個(gè)元素都加了1
2. DataFrame對象與ndarray對象進(jìn)行運(yùn)算,應(yīng)用了廣播機(jī)制 如: df+arr
3. Series和DataFrame運(yùn)算,Series 按照Series的index進(jìn)行運(yùn)算,所以Series的index的值要與DataFrame的columns的值一致,如果沒有對齊則補(bǔ)齊NaN,不是廣播。
4. DataFrame之間可以運(yùn)算,行列索引同時(shí)對齊,如果有任何一個(gè)對不齊則使用NaN填充。
代碼演示:
**一個(gè)數(shù)和DataFrame運(yùn)算**
```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對象運(yùn)算**
```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運(yùn)算**
```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之間運(yùn)算**
```
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
```
上面僅僅是演示了加法的操作,當(dāng)然也可以減法操作哦!
如果喜歡文章請點(diǎn)贊哦!

更多關(guān)于Python 培訓(xùn)的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項(xiàng)目實(shí)操的話可以點(diǎn)擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。