R面板时间序列平均图

R面板时间序列平均图,r,ggplot2,time-series,panel,mean,R,Ggplot2,Time Series,Panel,Mean,我有ID=1,2,3的面板数据。。。年份=200720082009。。。一个系数=0,1,一个变量X 我想创建一个时间序列图,x轴=年,y轴=x值,比较每个因素随时间的平均(=平均)发展。因为有两个因素,所以应该有两条线,一条实线和一条虚线 我假设第一步涉及计算每年的平均数和系数X,即在面板设置中。第二步应该如下所示: ggplot(data, aes(x=year, y=MEAN(X), group=Foreign, linetype=Foreign))+geom_line()+theme_b

我有ID=1,2,3的面板数据。。。年份=200720082009。。。一个系数=0,1,一个变量X

我想创建一个时间序列图,x轴=年,y轴=x值,比较每个因素随时间的平均(=平均)发展。因为有两个因素,所以应该有两条线,一条实线和一条虚线

我假设第一步涉及计算每年的平均数和系数X,即在面板设置中。第二步应该如下所示:

ggplot(data, aes(x=year, y=MEAN(X), group=Foreign, linetype=Foreign))+geom_line()+theme_bw() 

多谢各位

使用
dplyr
计算平均值:

library(dplyr)

# generate some data (because you didn't provide any, or any way or generating it...)
data = data.frame(ID = 1:200, 
                  year = rep(1951:2000, each = 4), 
                  foreign = rep(c(0, 1), 100), 
                  x = rnorm(200))

# For each year, and seperately for foreign or not, calculate mean x.
data.means <- data %>% 
                group_by(year, foreign) %>%
                summarize(xmean = mean(x))

# plot. You don't need group = foreign
ggplot(data.means, aes(x = year, y = xmean, linetype = factor(foreign))) + 
  geom_line() +
  theme_bw()
库(dplyr)
#生成一些数据(因为您没有提供任何或任何方式或生成数据…)
数据=数据帧(ID=1:200,
年份=代表(1951:2000,每个=4),
外国=代表(c(0,1),100),
x=rnorm(200))
#每年,分别计算国外和非国外的平均值x。
数据平均值%
按年份划分的集团(国外)%>%
汇总(xmean=平均值(x))
#阴谋。您不需要group=foreign
ggplot(data.means,aes(x=年份,y=xmean,线型=系数(国外))+
geom_线()+
主题_bw()

没问题!如果它回答了你的问题,你可以投票表决并/或接受它。