r - 使用 R 计算美国不同州的 HIV 病例百分比
问题描述
我有一个数据集,其中包含 2 年内美国四个州的 HIV 病例的绝对数量。
在我的数据集中,有三列date
(Jan 2018, Feb 2018 ...) , state
(CA, NY, FL, MA) 和abs_cases
. 我忽略了人口随时间的变化。我现在想使用人口计算每个州的相对病例数。以下是一些示例人口数据
pop<- c("CA"= 11111, "NY"= 22222, "FL"= 33333,"MA"= 444444
)。
我已经尝试过使用
df%>%
group_by(state)%>%
summarize(rel_cases= state/pop)
但是它将每个州多次划分为不同的人口。如何仅将这些值除以FL
佛罗里达州的人口等?
解决方案
如果没有示例数据集,这是我对您尝试做的事情的猜测。您可以使用将其转换pop
为数据框enframe
并将其加入df
by state
。然后,您可以计算每个州每个月的每个人口的病例数。
library(tidyverse)
pop <- c("CA"= 11111, "NY"= 22222, "FL"= 33333,"MA"= 444444)
pop <- enframe(pop, "state", "pop_num")
df %>%
left_join(pop, by = "state") %>%
mutate(rel_cases = abs_cases/pop_num)
推荐阅读
- hyperledger-fabric - 在超级账本结构中建立自定义网络时出错
- python - 捕获和存储对象检测
- cassandra - Cassandra 如何被认为是存储非结构化数据的优秀数据库?
- reactjs - pivotUtilities Unfedined
- delphi - 尝试在类型库中创建父级 VCL TFrame 时出现 EInvalidOperation 异常
- java - 为什么我的代码没有按预期工作?我认为空指针异常存在问题。(爪哇)
- r - 在 R 中创建条件变量
- php - 从文本框请求数据返回 null
- debugging - 我们可以绕过 SSL Pinning 吗?
- css - Tailwind 正文内容中的 MarginY-32 值。如何使用 devtools 查找代码中的值