I have a time series data frame with two ID columns and about 1000 columns for day 1, day 2, etc. I want to convert from my data frame being in the form
a    b    t1    t2  ... t1000
_____________________________
a1   b1   #     #       #
a2   b2   #     #       #
to being in the form
a    b    t    value
____________________
a1   b1   't1'     #  
a1   b1   't2'     #
a2   b2   't1'     #   
a2   b2   't2'     #
Essentially, I want to do something like this:
dataframe %>%
  select(starts_with("t_") ) %>%
  gather(key = "t", value = "value")
so that I have a dataframe looking like this:
t    value
__________
't1'   #
't2'   #
...
't100' #
for each row in the original dataframe. Then once I have the time columns that I generated from one row in the original dataframe, I want to left append the "a" and "b" columns to each row, so that this:
t    value
__________
't1'   #
't2'   #
...
't100' #
turns into this:
a    b    t    value
____________________
a1   b1   't1'   #
a1   b1   't2'   #
...
a1   b1   't100' #
and then I repeat this process for each row, stacking the new generated dataframe below (or above) the previously generated dataframe. At the end I want to have the dataframe in the code block above generated for each row of the original dataframe, and all stacked on top of one another. I could do this with a for loop, or maybe even some sapply magic, but I don't want to use a for loop in R, and I feel like there's a better way to do this than sapply-ing some function into each row of the original dataframe.
Can anyone help me? Thanks. Preferably using tidyverse.
 
     
    