【发布时间】:2021-11-17 22:31:38
【问题描述】:
我想查看按日期计算的具有最多对应数据点的前 10 种产品。 由于一天内售出的数量记录在“soldUnits”下,因此在某一天没有重复的 ArticleNr 条目。 因此,示例数据集中的最大数量为“365 obs. of 3 variables”。 如何过滤我的数据集?
编辑:给定编辑后的数据集,我想过滤掉文章编号“1”,因为它在“日期”列中具有最对应的数据
我的真实数据中的问题是大约有 2000 个产品,我在“日期”列中看不到哪个 Article Nr 具有最对应的数据
编辑2: 作为 MRE,我们可以看看这个数据集
df <- data.frame(ArticleNr = c("1", "2", "3", "1", "2", "1"),
created = as.Date(c("2020-01-01", "2020-01-01", "2020-01-01", "2020-01-02", "2020-01-02", "2020-01-03"), "%Y-%m-%d", tz = "GMT"),
soldUnits = c(1, 1, 1, 1, 1, 1),
stringsAsFactors=FALSE)
这导致
ArticleNr soldDate soldUnits
11 2020-01-01 1
22 2020-01-01 1
33 2020-01-01 1
11 2020-01-02 1
22 2020-01-02 1
11 2020-01-03 1
我想要的结果是具有 n 个排名(前 3 名、前 10 名、前 25 名)的排名
在这个 Dataframe 中,它看起来像这样
Rank ArticleNr soldOnDates
1 11 3 #<-- ArticleNr 11 was sold on 3 out of 3 days, so it has Rank 1
2 22 2
3 33 1
如何在包含大约 2000 种产品的大型数据集上实现这一目标?
【问题讨论】:
-
在您的示例数据中,哪些“产品 (...) 按日期具有最多的数据点”?似乎两个日期都有四个不同的
Article Nr,每个出现一次。你能调整你的示例数据来展示你想要做什么吗? -
请提供minimal reproducible example 而不是表格。您还可以阅读this post 以增加获得答案的机会。并展示您的预期结果。
标签: r dplyr data-science data-analysis