首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在R中滞后ts对象?

如何在R中滞后ts对象?
EN

Stack Overflow用户
提问于 2021-09-09 12:57:29
回答 1查看 202关注 0票数 1

我有一个数据,每一个变量每年有436个观察。

我通过命令使每个变量都成为ts对象。

代码语言:javascript
运行
复制
ts("a", frequency=436)

现在,我想提前一年(例如,从2010年到2011年)移动一个变量。

因此,我尝试使用命令

代码语言:javascript
运行
复制
lag("a", k=1)

但它给了我:

错误:x必须是向量,而不是ts对象,您想要stats::lag()吗?

你有什么意见建议?

EN

Stack Overflow用户

回答已采纳

发布于 2021-09-09 13:31:44

您可能已经安装了dplyr。它用它自己不兼容的lag击毁了R的lag。你可以做其中之一:

正如消息所说的那样,使用lag.

  • Define

  • 代替lag来强制使用R的lag lag <- stats::lag,然后像往常一样使用lag。要引用dplyr的延迟,可以使用dplyr::lag.

  • Do,而不是加载dplyr。

  • 加载dplyr,但是可以这样做:library(dplyr, exclude = c("filter", "lag"))。如果您这样做了,lag将引用R的lag,而dplyr::lag将引用dplyr的折叠包中的不兼容的lag flag,如果您的数据是一个数字ts系列--由于这是一个字符ts系列,问题中的dplyr::lag将不能使用这个选项。
票数 4
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69118634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档