Реплицируйте и транспонируйте данные

Я пытался изменить свои данные, и я пришел к блоку в том, как это сделать. У меня довольно большие наборы данных, но вот пример одной строки:

TJ25_TAD 

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

Я хочу реплицировать каждую строку (каждое значение даты / часа, для которого у меня есть сотни строк), а затем иметь один столбец для значений, чтобы это выглядело так:

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 корзин. Мне удалось воспроизвести каждое значение даты 12 раз, я просто не знаю, как заполнять данные корзины. Я читал о melt() функционировать, но я не знаю, как правильно его использовать.

1 ответ

Решение
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)
Другие вопросы по тегам