mean()和sum()/ n()结果不匹配

NelnewR

我正在通过R进行数据科学练习,以自学R,当试图为同一问题找到不同的解决方案时,我遇到了令我困惑的结果。

我加载了以下软件包:

library(nycflights13)
library(tidyverse)

问题是:查看每天取消的航班数(flights数据集)。有模式吗?取消航班的比例与平均延误有关吗?

我找到了一个很好地描述模式的解决方案:

flights %>%
 group_by(year, month, day) %>%
 summarize(cancelled = mean(is.na(arr_delay)) , avg_delay = mean(arr_delay, na.rm = TRUE)) %>%
 ggplot(mapping = aes(x = avg_delay, y = cancelled)) +
 geom_point(alpha=0.5) + 
 geom_smooth(se=FALSE)

下面的代码(交换mean()sum()/n()cancelled航班)给出了完全一样的画面:

flights %>%
 group_by(year, month, day) %>%
 summarize(cancelled = sum(is.na(arr_delay))/n() , avg_delay = mean(arr_delay, na.rm = TRUE)) %>%
 ggplot(mapping = aes(x = avg_delay, y = cancelled)) +
 geom_point(alpha=0.5) + 
 geom_smooth(se=FALSE)

但是,当我对进行相同操作时avg_delay,图片将发生变化:

flights %>%
  group_by(year, month, day) %>%
  summarize(cancelled = sum(is.na(arr_delay))/n() , avg_delay = sum(arr_delay, na.rm = TRUE)/n()) %>%
  ggplot(mapping = aes(x = avg_delay, y = cancelled)) +
  geom_point(alpha=0.5) + 
  geom_smooth(se=FALSE)

我希望所有表达式都能给出相同的结果。我的想法是有时会考虑缺失值,有时不会考虑缺失值,因此画面会发生变化,但是我缺乏R知识来测试差异。谁能建议我需要做些什么,以弄清差异的来源?

co

这是因为使用meanwithna.rm = TRUE将仅考虑那些not的行NA因此长度将不等于n()

考虑例如在您的最后一个示例中,使用

avg_delay = sum(arr_delay, na.rm = TRUE)/sum(!is.na(arr_delay))

将产生与上述两种方法完全相同的结果

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

iperf和iptraf结果不匹配

CPU和GPU生成的结果不匹配

dnorm和dmvnorm结果不匹配

Google表格不匹配和拆分结果

搜索结果和构面结果不匹配

元素匹配与大于和小于mongodb之间的结果不匹配

Java和C ++加密结果不匹配

结果值以'?:'表达式的类型'()'和'Bool'不匹配

OpenSSL的结果与Windows的cmd和电源外壳不匹配

结果值以'?:'表达式的类型'()'和'String?'不匹配

为什么du和quota结果不匹配?

awk匹配并查找文件和输出结果之间的不匹配

需要从两个列表中获取匹配和不匹配结果

根据列进行联接,并在视图中显示不匹配和匹配行的结果

我如何获得包含匹配和不匹配记录的mysql结果集

Android和Crypto ++ AES 128位加密结果不匹配

Kibana 查询结果在 _count 和 _search api 之间不匹配

结果值以'?:'表达式的类型不匹配'some View'和'...'

OpenCV 3.4:CPU和CUDA中调整大小的结果在C ++中不匹配

为什么“ charCodeAt(0)”和“ e.keyCode”的结果不匹配?

AForge FFT2和Matlab FFT2结果不匹配

ROOT 结果在 cmake .exe 和终端命令之间不匹配

Python FuzzyWuzzy在fuzz.ratio和process.extractOne结果之间出现意外的不匹配

PHP md5和JS hex_md5与特殊字符上的结果不匹配

结果值以'?:'表达式的类型'String.SubSequence'(又名'Substring')和'String'不匹配

按日期和条件汇总Python熊猫列不匹配结果

使用R的主成分分析。自动和手动结果不匹配

图像分割:图像和标签 ID 不匹配以评估预测步骤中的结果

grep不匹配和匹配