2016-04-23 122 views
3

我試圖找出如何確定數據框中兩列之間的關係。項目與總數之間的關係。我想計算每個「物品」價值的總金額,其中物品是每個購物籃的物品數量,總計是每個購物籃的總金額/費用。列:兩列之間的關係Python

Date Time Basket Items Total 

我當前的Python代碼來獲得項目數的每個頻率爲:

items = result['Items'].value_counts() 

我試過這個代碼來獲取總數(和其他..):

Total_per_Items = result.groupby(['Items','Total']) 
Totals = Total_per_Items['Total'].sum() 
Totals 

,並得到如下的輸出:

Items Total 
1 0.00  0.00 
    0.01  0.03 
    0.02  0.02 
    0.11  0.11 
    0.22  0.22 
    0.24  0.24 
    0.28  0.28 
    0.29  0.29 

凡不是我想要得到的東西,如:

Items Total 
1  10500.65 
2  2300.50 
3  3450.34 

我提出了上面的輸出,但我敢肯定,你得到的漂移。它讓我烤了。

回答

0

這給你的Total通過Item總和:

result.groupby(['Items'])['Total'].sum() 

例子:

>>> result = pd.DataFrame({'Items': [1, 2, 3, 2, 1, 2, 3], 
          'Total': [10, 20, 30, 20, 10, 20, 30]}) 
>>> result.groupby(['Items'])['Total'].sum() 
Items 
1 20 
2 60 
3 60 
Name: Total, dtype: int64 

這給你一個數據幀的結果是:

>>> result.groupby(['Items'])['Total'].sum().to_frame() 

     Total 
Items  
1   20 
2   60 
3   60 
+0

嗯,我想我需要將總計和項目分組,而不僅僅是項目本身.. – Theant6118