我什么時候應該使用熊貓在我的代碼中應用()?這是一個自我回答的QNA,目的是讓用戶了解應用的缺陷和好處。我見過很多關于Stack溢出的問題的答案,涉及到應用程序的使用。我也看到用戶在他們下面評論說:“apply是緩慢的“,應該避免”。我讀過許多關于性能主題的文章,這些文章解釋了apply很慢。我還在文檔中看到了一個免責聲明apply只是傳遞UDF的一個方便函數(現在似乎找不到)。所以,大家的共識是apply如果可能的話應該避免。然而,這提出了以下問題:如果apply是如此糟糕,那么為什么它在API中呢?我應該如何以及何時編寫我的代碼apply-免費?有沒有什么情況apply是好的(比其他可能的解決方案更好)?
3 回答

慕桂英3389331
TA貢獻2036條經驗 獲得超8個贊
axis=1
apply
pandas
apply
)
def faster_df_apply(df, func): cols = list(df.columns) data, index = [], [] for row in df.itertuples(index=True): row_dict = {f:v for f,v in zip(cols, row[1:])} data.append(func(row_dict)) index.append(row[0]) return pd.Series(data, index=index)
添加回答
舉報
0/150
提交
取消