撞车和受伤的次数?
Count of crashes and injuries?
我有一个来自 dot.gov 网站的数据集,作为我们学校项目的一部分,我必须对其进行分析。它包含很多信息,但我只关注碰撞和伤害。例如,我如何计算 2007 年至 2014 年的撞车或受伤人数?
我是否必须每年对数据进行子集化,或者有更有效的方法吗?谢谢!
以下是我的数据集示例:
如果没有您的数据集的可重现示例,我们可以在其上测试我们的代码,则很难确定它是否有效,但是使用 dplyr
和 lubridate
包,您可以尝试(假设您的数据集名为 df
):
library(dplyr)
library(lubridate)
df %>% mutate(YEARTXT = ymd(YEARTXT)) %>%
mutate(Year = year(YEARTXT)) %>%
filter(Year %in% 2007:2014) %>%
summarise(INJURED = sum(INJURED, na.rm = FALSE),
CRASH = sum(CRASH == "Y"))
要获得每年的碰撞和受伤次数,您可以将 group_by
添加到以下序列中,例如:
df %>% mutate(YEARTXT = ymd(YEARTXT)) %>%
mutate(Year = year(YEARTXT)) %>%
group_by(Year) %>%
filter(Year %in% 2007:2014) %>%
summarise(INJURED = sum(INJURED, na.rm = FALSE),
CRASH = sum(CRASH == "Y"))
如果这不起作用,请提供您的数据集的可重现示例:How to make a great R reproducible example
我有一个来自 dot.gov 网站的数据集,作为我们学校项目的一部分,我必须对其进行分析。它包含很多信息,但我只关注碰撞和伤害。例如,我如何计算 2007 年至 2014 年的撞车或受伤人数?
我是否必须每年对数据进行子集化,或者有更有效的方法吗?谢谢!
以下是我的数据集示例:
如果没有您的数据集的可重现示例,我们可以在其上测试我们的代码,则很难确定它是否有效,但是使用 dplyr
和 lubridate
包,您可以尝试(假设您的数据集名为 df
):
library(dplyr)
library(lubridate)
df %>% mutate(YEARTXT = ymd(YEARTXT)) %>%
mutate(Year = year(YEARTXT)) %>%
filter(Year %in% 2007:2014) %>%
summarise(INJURED = sum(INJURED, na.rm = FALSE),
CRASH = sum(CRASH == "Y"))
要获得每年的碰撞和受伤次数,您可以将 group_by
添加到以下序列中,例如:
df %>% mutate(YEARTXT = ymd(YEARTXT)) %>%
mutate(Year = year(YEARTXT)) %>%
group_by(Year) %>%
filter(Year %in% 2007:2014) %>%
summarise(INJURED = sum(INJURED, na.rm = FALSE),
CRASH = sum(CRASH == "Y"))
如果这不起作用,请提供您的数据集的可重现示例:How to make a great R reproducible example