簡體   English   中英

根據另一列重復數據幀值N次

[英]Repeating a dataframe value N times based on another column

我已經導出了一個csv文件,將其導入到IPython中,然后選擇了要分析的兩列。

我想從此數據創建直方圖:

  • “花費的平均時間(訂單項)”是直方圖的x軸。
  • “訂單項數”是每個“平均時間”的頻率。

問題 :我怎樣才能做到這一點? 我想創建一個數組來存儲“平均花費的時間(訂單項)”的每個實例N次,其中N是“訂單項的數量”。

但是,我不知道該如何編碼。 我嘗試使用列表理解,但是無法正常工作。

這是我嘗試過的:

df = pd.read_csv('eidpc1_prechange.csv', skiprows=11)
filterdf = pd.DataFrame(df[['Average time taken (line items)',
                            'Number of line items.1']]).dropna()
histogram = [filterdf['Average time taken (line items)'] 
             for line in filterdf['Number of line items.1']]

Ipython代碼和結果的圖片

numpy具有直方圖的面向計算的版本

matplotlib具有直方圖的面向圖的版本

特別要注意weights參數,可以很好地對樣本進行加權。 例如,

pyplot.hist(
    df['Average time taken(line items)'].values, 
    weights=df['Number of line items.1'].values);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM