用法:
dask.array.around(x, decimals=0)
均勻四舍五入到給定的小數位數。
此文檔字符串是從 numpy.around 複製的
可能存在與 Dask 版本的一些不一致之處。
- a:數組(在 Dask 中不支持)
輸入數據。
- decimals:int 可選
要四舍五入的小數位數(默認值:0)。如果小數為負數,它指定小數點左側的位數。
- out:ndarray,可選(在 Dask 中不支持)
用於放置結果的替代輸出數組。它必須具有與預期輸出相同的形狀,但如果需要,輸出值的類型將被強製轉換。有關更多詳細信息,請參閱輸出類型確定。
- rounded_array:ndarray
與
a
類型相同的數組,包含四舍五入的值。除非指定out
,否則將創建一個新數組。返回對結果的引用。複數的實部和虛部分別四舍五入。將浮點數舍入的結果是浮點數。
參數:
返回:
注意:
對於恰好介於四舍五入的十進製值之間的值,NumPy 會四舍五入到最接近的偶數值。因此 1.5 和 2.5 舍入為 2.0,-0.5 和 0.5 舍入為 0.0,等等。
np.around
使用快速但有時不精確的算法來舍入浮點數據類型。對於正數decimals
,它等效於np.true_divide(np.rint(a * 10**decimals), 10**decimals)
,由於 IEEE 浮點標準 [1] 中小數部分的不精確表示以及按 10 的冪縮放時引入的錯誤,因此存在錯誤。例如,請注意以下額外的“1”:>>> np.round(56294995342131.5, 3) 56294995342131.51
如果您的目標是打印具有固定小數位數的此類值,則最好使用 numpy 的浮點打印例程來限製打印的小數位數:
>>> np.format_float_positional(56294995342131.5, precision=3) '56294995342131.5'
浮點打印例程使用精確但計算要求更高的算法來計算小數點後的位數。
或者,Python 的內置
round
函數對 64 位浮點值使用更準確但更慢的算法:>>> round(56294995342131.5, 3) 56294995342131.5 >>> np.round(16.055, 2), round(16.055, 2) # equals 16.0549999999999997 (16.06, 16.05)
參考:
- 1
“關於 IEEE 754 狀態的講義”,William Kahan,https://people.eecs.berkeley.edu/~wkahan/ieee754status/IEEE754.PDF
例子:
>>> np.around([0.37, 1.64]) array([0., 2.]) >>> np.around([0.37, 1.64], decimals=1) array([0.4, 1.6]) >>> np.around([.5, 1.5, 2.5, 3.5, 4.5]) # rounds to nearest even value array([0., 2., 2., 4., 4.]) >>> np.around([1,2,3,11], decimals=1) # ndarray of ints is returned array([ 1, 2, 3, 11]) >>> np.around([1,2,3,11], decimals=-1) array([ 0, 0, 0, 10])
相關用法
- Python dask.array.arctan用法及代碼示例
- Python dask.array.arcsin用法及代碼示例
- Python dask.array.arccos用法及代碼示例
- Python dask.array.array用法及代碼示例
- Python dask.array.arctanh用法及代碼示例
- Python dask.array.argtopk用法及代碼示例
- Python dask.array.argmin用法及代碼示例
- Python dask.array.arccosh用法及代碼示例
- Python dask.array.arcsinh用法及代碼示例
- Python dask.array.arctan2用法及代碼示例
- Python dask.array.argmax用法及代碼示例
- Python dask.array.argwhere用法及代碼示例
- Python dask.array.asanyarray用法及代碼示例
- Python dask.array.all用法及代碼示例
- Python dask.array.atleast_3d用法及代碼示例
- Python dask.array.allclose用法及代碼示例
- Python dask.array.apply_over_axes用法及代碼示例
- Python dask.array.average用法及代碼示例
- Python dask.array.apply_along_axis用法及代碼示例
- Python dask.array.atleast_1d用法及代碼示例
注:本文由純淨天空篩選整理自dask.org大神的英文原創作品 dask.array.around。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。