R ggplot为plot添加两条平均线
我有很多追随者R ggplot为plot添加两条平均线,r,ggplot2,R,Ggplot2,我有很多追随者 RMSE Model fold 1 0.4164260 lm 1 2 0.5412474 lm 2 3 0.3496156 lm 3 4 0.4431751 lm 4 5 0.4082882 lm 5 6 0.4398985 lm 6 7 0.4506528 lm 7 8 0.4236024 lm 8 9 0.4346417 lm 9
RMSE Model fold
1 0.4164260 lm 1
2 0.5412474 lm 2
3 0.3496156 lm 3
4 0.4431751 lm 4
5 0.4082882 lm 5
6 0.4398985 lm 6
7 0.4506528 lm 7
8 0.4236024 lm 8
9 0.4346417 lm 9
10 0.4982427 lm 10
11 0.3993842 MARS 1
12 0.5684007 MARS 2
13 0.3487462 MARS 3
14 0.4174607 MARS 4
15 0.3930033 MARS 5
16 0.4456201 MARS 6
17 0.4373339 MARS 7
18 0.4110089 MARS 8
19 0.4249311 MARS 9
20 0.4295155 MARS 10
我的计划如下:
ggplot(df, aes(x=factor(fold), y=RMSE, group=Model, colour=Model)) + geom_line()
我想为这两种型号做平均线。如何实现这一点?一种方法是创建一个单独的数据框,其中包含以下方法:
library(ggplot2)
library(plyr)
df_means <- ddply(df, "Model", summarise, mean_RMSE = mean(RMSE))
# Model mean_RMSE
# 1 lm 0.4405790
# 2 MARS 0.4275405
ggplot(df, aes(x=factor(fold), y=RMSE, group=Model, colour=Model)) +
geom_line() +
geom_hline(data=df_means, aes(yintercept=mean_RMSE, color=Model),
linetype="dashed")
这样可以防止线路“延伸”:
一种方法是创建一个单独的数据框,其中包含以下方法:
library(ggplot2)
library(plyr)
df_means <- ddply(df, "Model", summarise, mean_RMSE = mean(RMSE))
# Model mean_RMSE
# 1 lm 0.4405790
# 2 MARS 0.4275405
ggplot(df, aes(x=factor(fold), y=RMSE, group=Model, colour=Model)) +
geom_line() +
geom_hline(data=df_means, aes(yintercept=mean_RMSE, color=Model),
linetype="dashed")
这样可以防止线路“延伸”:
我添加了一个平滑,它创建了一个非常奇怪的绘图,是否要将平滑添加到多个绘图?@无效假设尝试将每个问答隔离到一个问题/问题。如果你有一个“新”问题,就把它和问题一起贴出来。话虽如此,平滑器可能没有什么问题——它很可能由每组进行平滑,并且具有非常宽的置信区间,这将使情节看起来“奇怪”。我添加了一个平滑,它创建了一个非常奇怪的图。是否要在多个图中添加平滑?@无效假设尝试将每个问答与一个问题/问题隔离。如果你有一个“新”问题,就把它和问题一起贴出来。话虽如此,平滑器可能没有什么问题——它很可能由每组进行平滑,并且具有非常宽的置信区间,这将使情节看起来“奇怪”。