簡體   English   中英

如何將 timeDate 列表合並為單個 timeDate?

[英]How to combine a list of timeDate into a single timeDate?

我可以為紐約交易所生成一個timeDate對象列表。 但是,大多數分析函數都需要單個timeDate對象。 底層數據表示是POSIXct ,所以我不能像向量或列表一樣附加它們。

怎么做?

library(timeDate)
x <- lapply(c(1885: 1886), holidayNYSE)
x

[[1]]
NewYork
[1] [1885-01-01] [1885-02-23] [1885-04-03] [1885-11-03] [1885-11-26] [1885-12-25]

[[2]]
NewYork
[1] [1886-01-01] [1886-02-22] [1886-04-23] [1886-05-31] [1886-07-05] [1886-11-02] [1886-11-25]

class(x[[1]])
[1] "timeDate"
attr(,"package")
[1] "timeDate"

class(x[[1]]@Data)
[1] "POSIXct" "POSIXt"

# ??? How to my two datetime objects ???

我們可以將do.callc

x1 <- do.call(c, x)
x1
#NewYork
#[1] [1885-01-01] [1885-02-23] [1885-04-03] [1885-11-03] [1885-11-26] [1885-12-25] [1886-01-01] [1886-02-22] [1886-04-23] [1886-05-31] [1886-07-05] [1886-11-02]
#[13] [1886-11-25]

str(x1)
#Formal class 'timeDate' [package "timeDate"] with 3 slots
#  ..@ Data     : POSIXct[1:13], format: "1885-01-01 05:00:00" "1885-02-23 05:00:00" "1885-04-03 05:00:00" "1885-11-03 05:00:00" ...
#  ..@ format   : chr "%Y-%m-%d"
#  ..@ FinCenter: chr "NewYork"

OP list的結構是

str(x)
#List of 2
#$ :Formal class 'timeDate' [package "timeDate"] with 3 slots
#  .. ..@ Data     : POSIXct[1:6], format: "1885-01-01 05:00:00" "1885-02-23 05:00:00" "1885-04-03 05:00:00" "1885-11-03 05:00:00" ...
#  .. ..@ format   : chr "%Y-%m-%d"
#  .. ..@ FinCenter: chr "NewYork"
# $ :Formal class 'timeDate' [package "timeDate"] with 3 slots
#   .. ..@ Data     : POSIXct[1:7], format: "1886-01-01 05:00:00" "1886-02-22 05:00:00" "1886-04-23 05:00:00" "1886-05-31 05:00:00" ...
#  .. ..@ format   : chr "%Y-%m-%d"
#  .. ..@ FinCenter: chr "NewYork"

暫無
暫無

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

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