作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用dcast转置下表
date event user_id
25-07-2020 Create 3455
25-07-2020 Visit 3567
25-07-2020 Visit 3567
25-07-2020 Add 3567
25-07-2020 Add 3678
25-07-2020 Add 3678
25-07-2020 Create 3567
24-07-2020 Edit 3871
我正在使用dcast转置以将我的事件作为列并计数user_id
dae_summ <- dcast(ahoy_events, date ~ event, value.var="user_id")
但是我没有得到
唯一的用户ID。它多次计数相同的user_id。我该怎么做才能使一个user_id在相同的日期和事件下仅被计数一次。
最佳答案
我们可以使用uniqueN
中的data.table
library(data.table)
dcast(setDT(ahoy_events), date ~ event, fun.aggregate = uniqueN)
# date Add Create Edit Visit
#1: 24-07-2020 0 0 1 0
#2: 25-07-2020 2 2 0 1
pivot_wider
中的
tidyr
将
values_fn
指定为
n_distinct
library(tidyr)
library(dplyr)
ahoy_events %>%
pivot_wider(names_from = event, values_from = user_id,
values_fn = list(user_id = n_distinct), values_fill = list(user_id = 0))
# A tibble: 2 x 5
# date Create Visit Add Edit
# <chr> <int> <int> <int> <int>
#1 25-07-2020 2 1 2 0
#2 24-07-2020 0 0 0 1
数据
ahoy_events <- structure(list(date = c("25-07-2020", "25-07-2020", "25-07-2020",
"25-07-2020", "25-07-2020", "25-07-2020", "25-07-2020", "24-07-2020"
), event = c("Create", "Visit", "Visit", "Add", "Add", "Add",
"Create", "Edit"), user_id = c(3455L, 3567L, 3567L, 3567L, 3678L,
3678L, 3567L, 3871L)), class = "data.frame", row.names = c(NA,
-8L))
关于r - 如何在R中使用dcast计算唯一计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63092419/
我是一名优秀的程序员,十分优秀!