基于另一列重复数据帧值N次

时间:2015-05-19 04:37:42

标签: python csv pandas

我导出了一个csv文件,将其导入到IPython中,然后选择了我要分析的两列。

我想根据这些数据创建一个直方图:

  • "平均花费的时间(订单项)"是直方图的x轴。
  • "订单项数量"是每个"平均时间的频率"。

问题:我怎么能做到这一点?我想创建一个数组来存储每个&#34的实例;平均花费的时间(行项目)" 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']]

picture of Ipython code and results

1 个答案:

答案 0 :(得分:0)

numpycomputational-oriented version of histogram

matplotlibplot-oriented version of histogram

特别要注意weights参数,可以用来对样本进行加权。例如,

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