【问题标题】:T tests in R- unable to run togetherR中的T测试-无法一起运行
【发布时间】:2016-11-30 13:55:51
【问题描述】:

我有一家来自统计计算的航空公司 dataset,我正在尝试分析它。

有变量 DepTime 和 ArrDelay(出发时间和到达延迟)。我正在尝试分析到达延迟如何随出发时间的某些部分而变化。我的目标是找出一个人在订票时应该避开哪些时间段以避免到达延误

我的理解-如果在 dep time >1800 的到达延迟和 dep time >1900 的到达延迟之间的单尾 t 检验显示出高度显着性,这意味着应该避免在 1800 和 1900 之间的航班。(请纠正我如果我错了)。我想在所有出发时间运行此类测试。

**对编程和数据科学完全陌生。任何帮助将不胜感激。

数据看起来像这样。突出显示的列是我正在分析的列

【问题讨论】:

  • 那么你想测试所有的出发时间吗?最好是测试每个小时与所有时间,这样您就知道哪些时间比“平均一天”更好/更差。您为什么不发布一些数据以及您希望输出的样子,以便我们更好地帮助您。
  • 查看SO Post,了解如何制作 R 可重现的示例
  • 抱歉之前的评论。因此,仅考虑两列 DepTime 和 ArrDelay 数据看起来像这样 [1829(time): 23(delay in minutes)]、[1700:10]、[1000:5]、[1750:137]。你的想法听起来也不错。我基本上想看看一天中的哪些时间不适合旅行延误。
  • 请将重现此问题所需的所有代码和数据放入问题本身
  • 向问题添加了数据集的快照。

标签: r statistics data-science t-test


【解决方案1】:

共享数据图像与提供数据供我们使用是不同的......

也就是说我去获取了一年的数据并进行了处理。

flights <- read.csv("~/Downloads/1995.csv", header=T)

flights <- flights[, c("DepTime", "ArrDelay")]
flights$Dep <- round(flights$DepTime-30, digits = -2)
head(flights, n=25)

# This tests each hour of departures against the entire day. 
# Alternative is set to "less" because we want to know if a given hour
# has less delay than the day as a whole.

pVsDay <- tapply(flights$ArrDelay, flights$Dep, 
                 function(x) t.test(x, flights$ArrDelay, alternative = "less"))

# This tests each hour of departures against every other hour of the day. 
# Alternative is set to "less" because we want to know if a given hour
# has less delay than the other hours.
pAllvsAll <- tapply(flights$ArrDelay, flights$Dep, 
                           function(x) tapply(flights$ArrDelay, flights$Dep, function (z) 
                             t.test(x, z, alternative = "less")))

我会让你弄清楚多重假设检验等等。

全部与全部

【讨论】:

  • 非常感谢!我是stackoverflow的新手。抱歉没有发布数据集!我理解你的代码..但是当我运行它时,我得到以下输出..我错过了什么吗?长度类模式 0 9 htest list 100 9 htest list 200 9 htest list 500 9 htest list 600 9 htest list 700 9 htest list 800 9 htest list 900 9 htest list 1000 9 htest list 1100 9 htest list 1200 9 htest list 1300 9 htest列表 1400 9 htest 列表 1500 9 htest 列表
  • 访问900小时与全天的比较使用pVsDay[[10]],访问2200和1300之间的比较使用pAllvsAll[[23]][[14]]
  • 非常感谢!欠你一大笔。有了这样的建议,您就不会被编程吓倒了。
  • 所以我应该能够通过 pVsDay[[10]]$p.value 访问 pvalues 对吗?最后一个问题..我正在努力绘制图表。你是怎么画的?可以在 qplot 或 ggplot 中使用函数吗?
  • 正确,...$p.value 将只返回 pvalue。将 pvalues 提取到新对象然后绘制可能是最简单的方法
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-13
  • 2011-11-12
  • 2020-10-31
  • 2018-11-17
  • 1970-01-01
相关资源
最近更新 更多