2014-02-05 92 views
0

我有一個表使用移動數據加權平均

range, value 
0-15, 23 
15-25, 34 
25-35, 99 
35-45, 100 
45-50, 109 

現在我想做的就是移動這個表

range, value 
0-25, [23*(15/25) + 34*(10/25)] 
25-50, .... 

所以我想舉個例子加權平均..

0-25 => [0-15, 15-25] 
    => [0.6, 0.4] % contribution 
    => [0.6*23 + 0.4*34] 

但它必須以使得任何給定的[0-3,3-17,17-88]範圍內的範圍內,我可以定義[0-10,10-25 ...]。

我真的不知道從哪裏開始。 這將是巨大的,如果你能不能給我一點幫助走了。

+0

整合最多(0-15和15-25至0-25)是一回事,但你怎麼能肯定的樣品被分配到適當的範圍時你拆了下來(17-88 17-25到25 -...)?另外,表格不是python數據結構;你的數據實際上是什麼樣的? – jonrsharpe

回答

0

我的建議是把原來的表作爲階躍函數(即,函數,它是恆定幾乎無處不在,從一個值跳到另一個)。然後通過計算階躍函數的積分(曲線下面積)構造第二個表格。你可以先考慮一個連續函數 - 你可以通過計算兩個端點之間的積分來構造第二個表格,對吧?除了必須考慮原始端點的跳躍之外,同樣的想法適用於階梯函數。

這種想法基本上假定從所述第一表格構建了數據作爲均勻地擴散。這可能會也可能不會,但是如果沒有進一步的信息(例如原始數據本身),您無法做得更好。