簡體   English   中英

將不規則時間序列數據集與 R 中的規則時間序列數據合並

[英]merging irregular time series datset with a regular time series data in R

您好我正在嘗試合並兩個數據集,一個具有常規時間序列(數據幀 A),另一個具有不規則時間序列(數據幀 B)。 這兩個數據框看起來像:

Dataframe A:

時間 國家 行動
198001 一個 1
198002 一個 0
198003 一個 0
198004 一個 -1
...
201210 Z 1
201211 Z 0
201212 Z 0

Dataframe B:

時間 國家 派對 多變的
198002 一個 A1 X
201210 Z Z1
201212 Z Z2 Z

我嘗試使用 dplyr 中的 full_join,但隨后它為所有與 dataframe 2 中的觀察結果不重疊的時間范圍產生了 NA。

我現在的樣子:

時間 國家 行動 聚會 多變的
198001 一個 1 不適用 不適用
198002 一個 0 A1 X
198003 一個 0 A1 不適用
198004 一個 -1 A1 不適用
...
201210 Z 1 Z1
201211 Z 0 Z1 不適用
201212 Z 0 Z2 Z

相反,我希望將非重疊時間范圍 (NA) 中的觀察結果替換為 dataframe 2 中的最后一個觀察結果。

所以合並的 dataframe 看起來像:

時間 國家 行動 聚會 多變的
198001 一個 1 不適用 不適用
198002 一個 0 A1 X
198003 一個 0 A1 X
198004 一個 -1 A1 X
...
201210 Z 1 Z1
201211 Z 0 Z1
201212 Z 0 Z2 Z

您可以執行full_join ,然后fill partyvariable列。

result <- dplyr::full_join(A, B, by = c("time", "country")) %>%
           tidyr::fill(party, variable, .direction = 'down')

result

暫無
暫無

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

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