R ggplot线图显示所有单个值,而不是平均值
您好,我对R非常陌生,我想演示直线图中两个变量之间可能的交互。然而,我得到的图表确实包含了所有单独的反应时间值,而不是平均值。我想我的数据可能格式不对?目前,我的位置和紧张状态在不同的列中指定,反应时间作为结果变量在另一列中指定 我使用的代码是:R ggplot线图显示所有单个值,而不是平均值,r,ggplot2,linegraph,R,Ggplot2,Linegraph,您好,我对R非常陌生,我想演示直线图中两个变量之间可能的交互。然而,我得到的图表确实包含了所有单独的反应时间值,而不是平均值。我想我的数据可能格式不对?目前,我的位置和紧张状态在不同的列中指定,反应时间作为结果变量在另一列中指定 我使用的代码是: line <- ggplot(data_tense_final, aes(f2.f.position, RT3, colour = f2.f.tense)) line + stat_summary(fun.y = mean, geom =
line <- ggplot(data_tense_final, aes(f2.f.position, RT3, colour = f2.f.tense))
line +
stat_summary(fun.y = mean, geom = "point") +
stat_summary(fun.y = mean, geom = "line", aes(group = f2.f.tense)) +
stat_summary(fun.data = mean_cl_boot, geom = "errorbar", width = 0.2) +
labs(x = "Position", y = "Mean RT", colour = "f2.f.tense")
The dataframe looks more or less like this:
f2.f.participant f2.f.condition f2.f.tense f2.f.position RT3
1 1 1 past back 445.944444444444
2 1 2 future front 448.882352941176
3 1 3 past front 454.222222222222
4 1 4 future back 526.4375
5 2 1 past back 338.631578947368
6 2 2 future front 342.058823529412
7 2 3 past front 350.222222222222
8 2 4 future back 341.266666666667
9 3 1 past back 331
10 3 2 future front 325.647058823529
The output from deput(x) is:
structure(list(f2.f.position = c("back", "front", "front", "back",
"back", "front", "front", "back", "back", "front", "front", "back",
"back", "front", "front", "back", "back", "front", "front", "back"
), RT3 = c("445.944444444444", "448.882352941176", "454.222222222222",
"526.4375", "338.631578947368", "342.058823529412", "350.222222222222",
"341.266666666667", "331", "325.647058823529", "303.9375", "361.111111111111",
"304.722222222222", "288.647058823529", "281.823529411765", "309.944444444444",
"304.722222222222", "288.647058823529", "281.823529411765", "309.944444444444"
), f2.f.tense = c("past", "future", "past", "future", "past",
"future", "past", "future", "past", "future", "past", "future",
"past", "future", "past", "future", "past", "future", "past",
"future")), row.names = c(1L, 20L, 39L, 58L, 77L, 96L, 115L,
134L, 153L, 172L, 191L, 210L, 229L, 248L, 267L, 286L, 305L, 324L,
343L, 362L), class = "data.frame")
line尝试使用函数ggline(…,add=“mean”)。您可以找到更多信息行非常感谢,我会试试这个!欢迎来到SO,JuliaH!有没有办法提供样本数据?在不知道我们在看什么的情况下,很难“玩”代码。如果您可以共享真实数据,那么请发布来自dput(x)
的输出,其中x
是您的帧的顶部这么多行,包括您正在使用的列,因此可能x
是头(data_tense_final[,c(“f2.f.position”,“RT3”,“f2.f.tense”)],20)
;类似于mean\u cl\u boot
。如果你不能共享数据(可以理解),那也不能成为没有数据的借口。。。这仅仅意味着您需要创建随机/代表性数据或使用公共数据集。非常感谢。非常感谢,我应该添加一些关于数据帧结构的信息(现在已经添加了几行),特别是因为我怀疑问题可能是数据格式!非常感谢和道歉!请阅读我之前的评论。R控制台上的data.frame
可能是对数据的错误表述:数字或字符串实际上可能是因子,这会破坏很多东西。同样,请发布来自dput
的输出,它可以澄清很多。当然,我很抱歉(正如我所说,我是R新手,不确定哪些信息最有用,但是的,你在之前的评论中说过,抱歉!),我会将输出添加到上述问题中。我已经编写了一些函数并将其应用于原始数据帧(以删除异常值、计算平均分数等)来创建此数据帧,这可能是一个问题?非常感谢!您是对的,我将更详细地探讨这是在什么时候发生的异常值检测,因为我将继续使用此数据集--但我非常高兴它现在已经开始工作了,非常感谢!:-)非常感谢,我会调查/尝试这个!
line <- ggplot(data_tense_final, aes(f2.f.position, RT3, colour = f2.f.tense))
line +
stat_summary(fun = "mean", geom = "point") + # I guess "s are needed
stat_summary(fun = "mean", geom = "line") + # grouping is already done by colour
stat_summary(fun.data = "mean_cl_boot", geom = "errorbar", width = 0.2) +
labs(x = "Position", y = "Mean RT", colour = "f2.f.tense")