axis{0 or ‘index’, 1 or ‘columns’}, default 0
Axis along which the function is applied:
- 0 or ‘index’: apply function to each column.
- 1 or ‘columns’: apply function to each row.
官網範例:
![Python: 如何用 pandas.DataFrame.apply 讓DataFrame增加新的一欄 ; df[“mean”] = df.apply( np.mean, axis=1) ; DataFrame.apply(func, axis=0, raw=False, result_type=None, args=(), **kwargs) - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2023/05/20230519103633_80.png)
![Python: 如何用 pandas.DataFrame.apply 讓DataFrame增加新的一欄 ; df[“mean”] = df.apply( np.mean, axis=1) ; DataFrame.apply(func, axis=0, raw=False, result_type=None, args=(), **kwargs) - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2023/05/20230519103642_8.png)
lambda x:[1,2]
#等效於def lambda(x): return [1, 2]
#不是 lambda x: x=[1,2]
# lambda函数不能包含赋值语句,因此会引发SyntaxError
这是一个简单的lambda函数,
它接受一个输入参数x,
并返回一个固定的列表[1, 2]
作为结果。
在这种情况下,无论传入的参数是什么,
该lambda函数都将返回[1, 2]
作为结果。
#[1,2]長度為2,同columns數
expand, broadcast看不出太大差別
(差在columns name):
![Python: 如何用 pandas.DataFrame.apply 讓DataFrame增加新的一欄 ; df[“mean”] = df.apply( np.mean, axis=1) ; DataFrame.apply(func, axis=0, raw=False, result_type=None, args=(), **kwargs) - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2023/05/20230519133433_10.png)
lambda x:[1,2,3] #長度為3 > columns數
#無法broadcast
![Python: 如何用 pandas.DataFrame.apply 讓DataFrame增加新的一欄 ; df[“mean”] = df.apply( np.mean, axis=1) ; DataFrame.apply(func, axis=0, raw=False, result_type=None, args=(), **kwargs) - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2023/05/20230519133444_20.png)
df[“mean”] = df.apply(np.mean, axis=1)
#為df增加一個新欄位
![Python: 如何用 pandas.DataFrame.apply 讓DataFrame增加新的一欄 ; df[“mean”] = df.apply( np.mean, axis=1) ; DataFrame.apply(func, axis=0, raw=False, result_type=None, args=(), **kwargs) - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2023/05/20230519103903_37.png)
推薦hahow線上學習python: https://igrape.net/30afN
近期留言