You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R for Data Science航班延误热力图示例代码合理性疑问

问题1:两次分组操作的作用

  • 第一次按month、dest分组:是为了聚合计算每个目的地、每个月的平均起飞延误时长,得到「月份-目的地」维度的汇总数据。
  • 第二次按dest单独分组:是为了筛选出全年12个月都有航班执飞的目的地。分组后调用filter(n() == 12)时,n()统计的是每个目的地对应的汇总数据行数,行数等于12就说明该目的地12个月都有有效数据,能避免后续热力图出现不规则的空缺块。

问题2:ungroup()操作的目的

完成目的地筛选后,数据集仍然是按dest分组的状态,此时的mutate操作只会在每个分组内生效。我们需要对所有目的地按照整体平均延误水平重新排序,就必须先调用ungroup()取消分组,让后续的reorder()可以基于全量数据计算排序规则,同时也能避免残留分组给后续ggplot绘图带来意料之外的逻辑错误。

问题3:标签杂乱仍被视为正确答案的原因

题目本身的要求就包含两个部分:

使用geom_tile()搭配dplyr探索平均航班延误随目的地、月份的变化规律,说明该绘图难以阅读的原因以及如何优化。

这个解决方案首先完全符合第一部分的技术要求,用指定的工具完成了数据聚合、热力图绘制的探索任务。更重要的是,它输出的标签拥挤的热力图刚好暴露了这类可视化的典型缺陷,刚好对应题目第二部分要求的「说明难以阅读的原因」的考察点,是题目要求的完整解决方案的一部分,并非要求输出完美无缺的可视化结果。

内容的提问来源于stack exchange,提问作者Shawn Hemelstrand

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 08:27:03