首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我得到的频率为1这个月的时间序列数据的R?

为什么我得到的频率为1这个月的时间序列数据的R?
EN

Stack Overflow用户
提问于 2019-05-12 11:27:17
回答 1查看 162关注 0票数 0

我使用R进行时间序列分析,我有下面的csv文件,我已经加载到R

代码语言:javascript
复制
CSV file:

我使用zoo包将数据帧转换为ts对象:

代码语言:javascript
复制
library(zoo)
df1_ts <- as.ts(read.zoo(df1, FUN = as.yearmon))

跑步:

代码语言:javascript
复制
class(df1_ts)
# [1] "mts"    "ts"     "matrix"`

但是,当我运行head(df1_ts)时,会得到以下结果:

代码语言:javascript
复制
head(df1_ts)
# Time Series:
# Start = 2014 
# End = 2018 
# Frequency = 1 
#      Jan  Feb  Mar  Apr  May  Jun  Jul  Aug  Sep  Oct  Nov  Dec
# 2014 4621 3569 4249 4593 3320 1970 2483 3474 4302 5670 5788 5570
# 2015 5747 4346 5176 5362 5360 3707 3883 5138 5568 6034 5989 5648
# 2016 5821 5164 5781 5346 5339 4743 5417 5514 5880 5899 6014 5641
# 2017 5980 5341 5890 5596 5753 5470 5589 5545 5749 5938 5864 5567
# 2018 5655 5392 5766 5268 5680 5337 5197 5714 5802 5935 5955 5637

为什么我要得到Frequency=1?我预计Frequency是12岁,因为这是每月的数据?

我怎么才能解决这个问题?

我尝试了以下几点,但没有成功:

代码语言:javascript
复制
df1_ts <- as.ts(read.zoo(df1, FUN = as.yearmon), freq=12)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-12 13:39:06

问题中所示的代码是创建一个由12个序列组成的多变量时间序列(每个月列一个序列),其时间指数为年份;然而,需要的是一个单变量月序列。

使用最后的注中所示的df1,首先用转置将data.frame df1转换成一个矩阵,然后用c逐列将这个转置矩阵分解成一个向量。现在我们可以直接定义ts系列了:

代码语言:javascript
复制
tt <- ts(c(t(df1[-1])), start = df1$Year[1], freq = 12)

给予:

代码语言:javascript
复制
frequency(tt)
## [1] 12
tt
##      Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2014   1   2   3   4   5   6   7   8   9  10  11  12
## 2015  13  14  15  16  17  18  19  20  21  22  23  24
## 2016  25  26  27  28  29  30  31  32  33  34  35  36
## 2017  37  38  39  40  41  42  43  44  45  46  47  48
## 2018  49  50  51  52  53  54  55  56  57  58  59  60

备注

请不要使用图片显示您的输入数据,因为这意味着,任何人想要回答它将需要重新键入它。提供可再现的R代码。这一次我为你们做了这件事,改变了数据以避免输入所有这些数字。

代码语言:javascript
复制
df1 <- as.data.frame(cbind(2014:2018, matrix(1:60, ncol = 12, byrow = TRUE)))
names(df1) <- c("Year", month.abb)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56098773

复制
相关文章

相似问题

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