na.rm不起作用,无法计算平均值
我试图计算每一个有超过50000例新冠病毒检测阳性的城市的平均数。当我尝试以下代码时:na.rm不起作用,无法计算平均值,r,R,我试图计算每一个有超过50000例新冠病毒检测阳性的城市的平均数。当我尝试以下代码时: covidJoined %>% group_by(Admin2) %>% filter(numOfCases > 50000) %>% slice(which.max(numOfCases)) %>% mean(as.numeric(covidJoined$Population), na.rm = TRUE) 我得到以下错误:参数不是数字或逻辑:返回NA 我怎样才能解决这个
covidJoined %>% group_by(Admin2) %>% filter(numOfCases > 50000) %>% slice(which.max(numOfCases)) %>% mean(as.numeric(covidJoined$Population), na.rm = TRUE)
我得到以下错误:参数不是数字或逻辑:返回NA
我怎样才能解决这个问题
summary(covidJoined)
Admin2 Lat Long_ date numOfCases Population
Length:15240 Min. : 0.00 Min. :-123.9 Length:15240 Min. : 0 Min. : 1175
Class :character 1st Qu.:36.44 1st Qu.:-122.0 Class :character 1st Qu.: 1 1st Qu.: 45578
Mode :character Median :37.98 Median :-120.8 Mode :character Median : 77 Median : 179140
Mean :36.58 Mean :-116.7 Mean : 4108 Mean : 642310
3rd Qu.:39.20 3rd Qu.:-119.8 3rd Qu.: 1389 3rd Qu.: 685306
Max. :41.74 Max. : 0.0 Max. :271371 Max. :9818605
NA's :508
str(covidJoined)
tibble [15,240 x 6] (S3: tbl_df/tbl/data.frame)
$ Admin2 : chr [1:15240] "Alameda" "Alameda" "Alameda" "Alameda" ...
$ Lat : num [1:15240] 37.6 37.6 37.6 37.6 37.6 ...
$ Long_ : num [1:15240] -122 -122 -122 -122 -122 ...
$ date : chr [1:15240] "1/22/20" "1/23/20" "1/24/20" "1/25/20" ...
$ numOfCases: num [1:15240] 0 0 0 0 0 0 0 0 0 0 ...
$ Population: num [1:15240] 1510271 1510271 1510271 1510271 1510271 ...
您可以尝试以下方法:
covidJoined %>%
filter(numOfCases > 50000) %>%
group_by(Admin2) %>%
summarise(avg_Pop = mean(Population))
问题不是
na.rm
。问题是您正在将data.frame传递给mean。我想你需要一些类似于总结(平均值(as.numeric(Population),na.rm=TRUE))
嗨,斯蒂芬!我得到1洛杉矶9818605 2橙色3010232 3河滨2189641 4圣贝纳迪诺2035210我想得到这些4的平均值,因为您的df是分组的。在总结之前添加一个解组
。谢谢Stephan!这成功了!嗨,亚历克斯!我得到洛杉矶9818605 2橙3010232 3河滨2189641 4圣贝纳迪诺2035210我想得到这4项的平均值。如果你想要一个总体平均值,请删除groupby()
行。