首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Excel显示日期范围内出现的次数

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

Stack Overflow用户
提问于 2010-01-18 08:01:32
回答 2查看 4.1K关注 0票数 3

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

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

透视表是我这里最好的机制吗?如果是(或不是),我该如何处理?

EN

回答 2

Stack Overflow用户

发布于 2010-01-18 08:13:17

我的投票使用轴心,如果你有2007年,就像这样

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

票数 2
EN

Stack Overflow用户

发布于 2010-01-23 18:13:30

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

我还有一个名为"trans_data“的两列表,和您的一样。列名是"trans_date“和"user_id”。我还想要一个像您这样的权变表,其中包含特定交易限制内的用户计数。

以下是代码

代码语言:javascript
运行
复制
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)
   }
)

以及部分结果

代码语言:javascript
运行
复制
  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
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2083191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档