我试图绘制一些用于探索性分析的快速图表,并提出以下问题:
如何在ggplot中绘制滞后时间序列?我想做这样的事情:
ggplot(data,aes(x=xdata,y=xdata-1)+geom_point()
Run Code Online (Sandbox Code Playgroud)
但是xdata-1减去1 xdata而不是读取先前的xdata值.
ggplot似乎没有一个lag.plot等价物,我确实找到了一个gglagplot在ggfortify包中调用的函数,似乎正是我想要的,但在最新版本的R(目前为3.2)中没有.
您可以使用tail获得滞后版本的向量:
tail(x,-1)
Run Code Online (Sandbox Code Playgroud)
但是在ggplot2美学中必须是长度为1或具有相同的长度,所以你应该为滞后的值附加一个值,以便将其与原始向量进行绘制.例如:
x= 1:10
qplot(x=x,y=c(tail(x,-1),0))
Run Code Online (Sandbox Code Playgroud)
另一种选择是使用lag函数from stats,但这假设您正在处理时间序列对象.
| 归档时间: |
|
| 查看次数: |
1923 次 |
| 最近记录: |