2
我想寫會採取錯誤值的列表的功能,並與這些錯誤相關的參數和:舍入誤差爲1和顯著圖並根據錯誤的位數一輪值
- 將誤差值舍入爲1位有效數字(按照慣例建立)
- 將參數值四捨五入爲出現在其相關錯誤中的位數。
因此,舉例來說,如果我有名單看起來像:
errors = [0.0097, 0.83, 0.05, 0.0045]
params = [0.0240, 7.85, 0.75, 12.5]
所產生的名單將這樣的功能後,將看起來像:
errors_r = [0.01, 0.8, 0.05, 0.005]
params_r = [0.02, 7.9, 0.75, 12.500]
,其中的誤差第一弧形到1位有效數字,然後將參數舍入到錯誤最終產生的任何位數。
從這個問題下面拍攝的功能How to round a number to significant figures in Python做四捨五入誤差爲1顯著位好工作:
from math import log10, floor
def round_to_1(x):
return round(x, -int(floor(log10(x))))
要在params
列表舍入值的位數在其關聯的錯誤,我可以使用round()函數並在它們四捨五入後給它提供錯誤中的小數位數,但我不知道如何才能到達該數字。
這是一個很好的答案,對原始功能的簡單修改就像一個魅力。尾隨零不是必需的,所以沒關係。謝謝! – Gabriel