如何计算R Studio中数据中邮政编码和投诉的标准偏差



目的

对于每个ZIP代码,需要计算由于具有构造描述的描述符而引起的噪声投诉的分数,然后报告ZIP的标准偏差。

如何计算噪音投诉的分数,也就是数据内部的"噪音:",并计算ZIP标准差?

问题

如何计算zip上的标准偏差sd(),表示投诉(描述符)列的一小部分

不确定如何获得ZIP和ZIP的标准偏差不在描述符的分数中。我的第一项工作是按zip和描述符进行分组。然后总结n()。不知道如何为这种格式的数据计算sd()。

R代码

nyc_comp_set <- nyc_comp %>%
select(incident_zip, city, descriptor)
nyc_comp_set$city <- factor(nyc_comp_set$city)
nyc_comp_set$descriptor <- factor(nyc_comp_set$descriptor)
nyc_comp_en <- one_hot(as.data.table(nyc_comp_set))
nyc_comp_const <- nyc_comp_set %>%
select(incident_zip, city, descriptor) %>%
filter(str_detect(nyc_comp_set$descriptor, "Construct")) %>%
group_by(incident_zip) 
nyc_comp_const_gp <- nyc_comp_const %>%
group_by(incident_zip, descriptor) %>%
summarise  (nzip = n()) %>% 
mutate(nyc_comp_const_gp$n <- n()) 

也许按照这个代码组织:

group_by(incident_zip, descriptor) %>%
summarise (n = n()) 

数据

数据来自"nyc_noise_complaints.csv"。这是一个示例。

incident_zip city     descriptor                                  
<dbl> <fct>    <fct>                                       
1        11231 BROOKLYN Noise: Construction Before/After Hours (NM1)
2        10454 BRONX    Noise: Construction Before/After Hours (NM1)
3        11234 BROOKLYN Noise: Construction Equipment (NC1)         
4        11234 BROOKLYN Noise: Construction Equipment (NC1)         
5        10462 BRONX    Noise: Construction Equipment (NC1)         
6        10034 NEW YORK Noise: Construction Before/After Hours (NM1)
7        10023 NEW YORK Noise: Construction Before/After Hours (NM1)
8        11249 BROOKLYN Noise: Construction Before/After Hours (NM1)
9        10001 NEW YORK Noise: Construction Before/After Hours (NM1)
10        10031 NEW YORK Noise: Construction Before/After Hours (NM1)

如果有比例p,则标准偏差为sqrt(p * (1 - p))。类似这样的东西:

nyc_comp %>%
group_by(incident_zip, city) %>%
summarize(prop_construction = mean(grepl("Construction", descriptor)), .groups = "drop") %>%
mutate(sd_construction = sqrt(prop_construction * (1 - prop_construction)))

最新更新