簡體   English   中英

如何在R中將毫秒數據轉換為時間序列

[英]How to convert millisecond data in to time series in R

timeInMSec height  c1
  1     100.0   1
  5     80.0    1
  6     80.0    0
  9     76.0    1
 12     80.5    0
 14     80.5    1
 16     80.5    0

我有上面顯示的數據,其中timeInMsec是毫秒時間,每當發生更改時,我們都會記錄數量。 數量既是類又是連續值,所以我想對此類數據進行時間序列分析。 那么如何使用R將這種不規則數據轉換成時間序列呢?

您提到“每當發生變化時我們都會記錄數量”,因此您可以擴展序列,然后根據之前的觀察填充值。 之后,您可以將數據幀轉換為時間序列。 如果您正在尋找更高級的插補技術。 您可以考慮imputeTS軟件包中的功能。

library(tidyverse)

dat2 <- dat %>%
  # Complete the sequence
  complete(timeInMSec = full_seq(timeInMSec, period = 1)) %>%
  # Fill the value based on previous record
  fill(-timeInMSec)

# Convert to ts object
dat_ts <- ts(dat2[, -1], start = dat2$timeInMSec[1], end = dat2$timeInMSec[16])

數據

dat <- read.table(text = "timeInMSec height  c1
  1     100.0   1
                  5     80.0    1
                  6     80.0    0
                  9     76.0    1
                  12     80.5    0
                  14     80.5    1
                  16     80.5    0",
                  header = TRUE)

暫無
暫無

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

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