2013-07-29 36 views
4

有沒有辦法限制浮點數的表示,以便它們只對應物理單位中使用的前綴。Numpy工程符號

一個例子可以很清楚的:

0.01 -> currently  1e-02 
     -> what I'd like 10e-03 

0.0001 -> currently  1e-04 
     -> what I'd like 100e-06 

的動機背後卻是,我做了一段時間的測量,並具有申述的1000表示是更加人性化。我知道,10e-03 -> 10mili100e-06 -> 100u

更新

對於numpy的1.7 <沒有在set_printoptions()一個formatter屬性。我要去的解決方案是編寫一個內聯函數來進行格式化。 一旦設置,它的格式應該在全球範圍內可用。

Reference about the formatter

+1

這就是所謂的「工程符號」,搜索「python工程符號」將產生一些食譜和代碼供您使用。 –

回答

1

我認爲this topic可能對你有所幫助。另一方面,我會嘗試爲特定範圍內的值創建幾個「桶」,並檢查一個簡單條件>(範圍中的最低值),然後將該值乘以一個範圍(例如,範圍)。 2e-5 by 1e6得到20u。效率不高,但容易。