[英]R: Covernt a complex time series dataframe to long
這是針對 R
date <- seq(as.Date("2020/03/11"), as.Date("2020/03/16"), "day")
x_pos_a <- c(1, 5, 4, 9, 0)
x_pos_b <- c(2, 6, 9, 5, 4)
like so [...]
我有一個時間序列 dataframe 有 69 個時間點。 dataframe 中的行是日期。 從三個群體(A、B、C)測量了四個變量(pos、anx、ang、sad)。 從每個群體(x、y、z)中抽取三個樣本。 目前,變量、總體和樣本 forms 的每個組合在 dataframe 中的一列。 例如,“x_pos_A”、“x_pos_B”、“x_pos_C”、“x_anx_A”...“z_sad_b”、“z_sad_c”。
我想將它重塑為以下形狀
“日期”“變量”“人口”“樣本”“值”
我花了最后 3 個小時在論壇上尋找答案,但沒有成功。
非常感謝任何幫助! 謝謝
您可以使用pivot_longer
的tidyr
:
tidyr::pivot_longer(df,
cols = -date,
names_to = c('sample', 'variable', 'population'),
names_sep = '_')
# date sample variable population value
# <date> <chr> <chr> <chr> <dbl>
# 1 2020-03-11 x pos a 1
# 2 2020-03-11 x pos b 2
# 3 2020-03-12 x pos a 5
# 4 2020-03-12 x pos b 6
# 5 2020-03-13 x pos a 4
# 6 2020-03-13 x pos b 9
# 7 2020-03-14 x pos a 9
# 8 2020-03-14 x pos b 5
# 9 2020-03-15 x pos a 0
#10 2020-03-15 x pos b 4
數據
date <- seq(as.Date("2020/03/11"), as.Date("2020/03/15"), "day")
x_pos_a <- c(1, 5, 4, 9, 0)
x_pos_b <- c(2, 6, 9, 5, 4)
df <- data.frame(date, x_pos_a, x_pos_b)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.