我一直在嘗試使用 lambda 函式對 DataFrame 的向量進行舍入。在我的向量中,我也有字串值,所以我嘗試了以下代碼:
dff.apply(lambda x: round(x, 2) if (isinstance(x,float)))
但它引發了 SyntaxError。
uj5u.com熱心網友回復:
這里有兩個問題:
- 十進制 if-else 缺少 else 陳述句。喜歡 user17242583 的回答。
dff.apply逐列消化,因此isinstance(x,float)不適用于四舍五入。改用矢量化numpy.round。
dff.apply( lambda x: np.round(x,2))
uj5u.com熱心網友回復:
Python 中的三元陳述句需要else在條件之后。
dff.apply(lambda x: round(x, 2) if (isinstance(x,float)) else x)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/357403.html
上一篇:Excel是否回傳預期結果
下一篇:如何創建一個低分追蹤器?
