复制和转置数据

Replicate and transpose data

我一直在尝试重塑我的数据,但在如何完成这一点上遇到了障碍。我有相当大的数据集,但这是单行的示例:

TJ25_TAD 

TJ_num     Date                Bin 1    Bin2    Bin3 
TJ25       4/18/2006 19:00     1.5      73.9    16.2

我想复制每一行(我有数百行的每个 date/hour 值),然后为这些值设置一个列,因此它看起来像这样:

TJ25_TAD 

TJ_num     Date                TAD 
TJ25       4/18/2006 19:00     1.5 
TJ25       4/18/2006 19:00     73.9
TJ25       4/18/2006 19:00     16.2

对于每个日期值,我实际上有 12 个 bin。我已经设法能够将每个日期值复制 12 次,我只是不知道如何填写 Bin 数据。我读过 melt() 函数,但我不知道如何正确使用它。

dt <- read.table(text = "TJ_num  Date  'Bin 1' 'Bin 2' 'Bin 3' 
    TJ25 '4/18/2006 19:00' 1.5 73.9 16.2",
                 header = TRUE, stringsAsFactors = FALSE)

library(dplyr)
library(tidyr)

dt2 <- dt %>%
  gather(Bin, TAD, 'Bin.1', 'Bin.2', 'Bin.3') %>%
  select(-Bin)