2013-02-28 52 views
1

我在熊貓中有一個數據框,用於存儲包含比率的列。這些比例需要轉換爲log2比例尺進行繪圖,但比率值通常爲0,這導致log2(0)被記錄爲inf或在熊貓中缺失值。我想要可視化這些,因爲在我的數據框中,比率值0是有意義的。在熊貓/ numpy中處理這個問題的最好方法是什麼?當我記錄日誌值時,是否需要這樣做?處理numpy/pandas中的零對數值

# take log with tiny value added 
c = 0.0000001 
df[col].apply(lamda x: log2(c + x)) 

還有其他方法嗎?謝謝。

+0

這僅相當於一個完全任意數量的更換你的''inf's LOG2(0.0000001)'你爲什麼不只是刪除了'inf's當您繪製和離開不繪圖時的'0'? – askewchan 2013-02-28 00:45:27

+3

假設你的比例是正的,如果你採用'c = 1.0',那麼'log2(c + x)'將映射[0,inf) - > [0,inf)。 – unutbu 2013-02-28 00:47:38

+0

@askewchan:因爲我想繪製0也是。它們構成了數據的重要組成部分。 – user248237dfsf 2013-02-28 00:50:26

回答