簡體   English   中英

將具有不規則時間點(不是日期)的向量轉換為 R 時間序列 object

[英]Convert vector with irregular time points (not dates) into an R time-series object

我想知道是否可以使用 ts() 函數來分析一些時間點不是日期的數據。

我的矢量看起來像這樣。

   0    3    5    8   12 
20.0 14.4 80.0 20.0  4.0 

我想將其轉換為時間序列 object 以使用 ts() 函數,但我正在努力。 我認為 ts() function 假設日期作為輸入,而我的數據沒有這個。

有沒有一種方法可以通過以下函數使我的數據看起來像 output?

library(stats)
suns <- ts.intersect(lynx, sunspot.year)[, "sunspot.year"]
suns


Time Series:
Start = 1821 
End = 1934 
Frequency = 1 
  [1]   6.6   4.0   1.8   8.5  16.6  36.3 

我們可以創造

  • 動物園系列 (z)。 zoo 泛化 ts 允許任意唯一時間。
  • 具有 NA 和時間 0、1、2、3、...、12 或
  • 一個 ts 系列忽略時代並使用 1, 2, 3, 4, 5 作為時代

使用以下代碼:

library(zoo)
values <- c(20, 14.4, 80, 20, 4)
tt <- c(0, 3, 5, 8, 12)
z <- zoo(values, tt)
z
##    0    3    5    8   12 
## 20.0 14.4 80.0 20.0  4.0 

as.ts(z)  # fill with NAs
## Time Series:
## Start = 0 
## End = 12 
## Frequency = 1 
##  [1] 20.0   NA   NA 14.4   NA 80.0   NA   NA 20.0   NA   NA   NA  4.0

ts(values) # ignores times and uses 1:5 instead
## Time Series:
## Start = 1 
## End = 5 
## Frequency = 1 
## [1] 20.0 14.4 80.0 20.0  4.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM