使用Excel显示日期范围内的出现次数

时间:2010-01-18 00:01:32

标签: excel statistics pivot-table histogram

我有一个交易日期列表和在该日期进行交易的人的用户ID(仅允许1个Tx /天)。例如:

我想创建一个矩阵,显示截至每个日期,进行过1次交易,2-10次交易,10-20次交易等的用户数量。例如(注意,下面的数据不是不对应上面的交易数据):

数据透视表是我最好的机制吗?如果是这样(或不是)我将如何处理?

2 个答案:

答案 0 :(得分:2)

我的投票使用了一个支点 如果您有类似这样的2007

1)选择上面的数据 2)插入枢轴 3)将日期拖动到行Loabel 4)将用户ID拖到列=>每个用户ID可以获得一列 5)在价值观中,yoiu应该有用户数 6)然后,您需要添加新列,以计算1-10段等用户的数量

答案 1 :(得分:1)

我知道我要说的内容有点“超出范围”,但我遇到了这样的问题而我使用R来解决它。 (如果我没有使用R,我想我会试过sql但是我绝不会选择excel)

我还有一个名为“trans_data”的2列表,与您的一样。列名是“trans_date”和“user_id”。我还想要一个像你这样的列联表,其中包含特定交易限制内的用户数量。

这是代码

library(plyr)
adply(table(trans_date),1,function(x) {
     d = NULL
     d["1"] <- sum(x==1)
     d["2_to_5"] <- sum(x > 1 & x <= 5) 
     d["6_to_27"] <- sum(x > 5 & x <= 27)
     d["28_to_120"] <- sum(x > 27 & x <= 120)
     d["121_to_398"] <- sum(x > 120 & x <= 398)
     d[">_398"] <- sum(x > 398)
     return(d)
   }
)

和部分结果

  trans_date   1 2_to_5 6_to_27 28_to_120 121_to_398 >_398
1 2009-01-25 257    169      61         7          1     0
2 2009-01-26 145    125      53         3          1     0
3 2009-01-27 175    117      44        12          0     0
4 2009-01-28 171    138      49         7          4     0
5 2009-01-29 756    217      71         5          3     0