r - R:计算 tibble/df 中的不同值
问题描述
我有以下示例data.frame:
n <- 100
dates <- as.Date(c("2021-01-01", "2021-01-02", "2021-01-03", "2021-01-04"))
df <- data.frame( date = sample(dates, n, replace = TRUE),
user = sample(LETTERS, n, replace = TRUE)
)
每个日期都记录了哪些用户 (AZ) 正在拨打电话。如果在特定日期没有特定用户的条目,则没有呼叫。用户一天可以打几个电话。
我想知道的是,每天有多少不同的用户在打电话?例如,我想要一个这样的表:
date number_of_users_doing_phone_calls
2021-01-01 10
2021-01-02 16
2021-01-03 26
2021-01-04 20
解决方案
一个dplyr
解决方案
library(dplyr)
df %>%
group_by(date) %>%
summarise(number_of_users_doing_phone_calls = n_distinct(user))
推荐阅读
- java - 如何使用 JsonWriter 在 Gson 中写入数据而不覆盖/删除以前存储的数据
- json - 将深度嵌套的 JSON 解码为 Swift
- reactjs - React 上下文提供程序中的陈旧闭包
- java - 需要有关 Quartz 调度程序的帮助;调度程序停止调度新作业
- node.js - 停止在rabbitmq中一段时间内使用临时消息?
- sql - 如何使用 pl/sql 中的触发器从旧表插入新表
- java - 如何使用 Java Swing 制作无边框箭头按钮?
- c# - 在 C# 中使用 WebRequest 时为 Microsoft Report Server 提供凭据
- python - 根据月份和位置组合两个数据集
- java - 用鼠标选择 JList 组件并按 Ctrl+C 复制 Java 代码