My dataset is a list with 1000 elements of type data.frame ("sportdata"). Each data.frame element of the list represents one minute of data and has exactly the same number & names of columns and each data.frame has a maximum of 45 ID's (i.e. 45 rows, but in some minutes one or more ID's is missing, so it could be e.g. 35 rows). **I want to combine and average the complete data set per 15 data.frames, add this in one data.frame and transpose the data.frame so that I've the ID's as columns and the average SpeedKph per 15min as rows.**

My list of data.frames looks like this:

```
head(sportdata)
        [[1]]
                ID  Distance SpeedKph
         1:     1     2247       73
         2:     2     2247       73
         3:     3     1970       73
         4:     4     1964       74 
         5:     5     1971       73 
        [[2]]
                ID  Distance SpeedKph
         1:     1     2247       73
         2:     2     2247       75
         3:     3     1970       73
         4:     4     1964       74 
         5:     5     1971       73 
        [[3]]
                ID  Distance SpeedKph
         1:     1     2247       73
         2:     2     2247       80
         3:     3     1970       73
         4:     4     1964       74 
         5:     5     1971       56 

```

I have the code below to combine and average all the data.frames from my list, but I haven't found a way to combine and average the list per 15 elements (i.e. 15 minutes) and add this in one data.frame. 

```
dfTotal <- rbindlist(sportdata)[,lapply(.SD,mean), list(ID)]    

```

I want my ideal output data.frame to look like: 

```
   #ofData.Frames |   1   |  2  |  3  |...etc.
         01-15:      73     74    74
         16-30:      75     77    74
         31-45:      74     74    79
         46-60:      78     72    74
         ...etc.

```

Thanks in advance for your help!

**UPDATE**
Sorry for not doing this directly, hereby my reproducible example.

```
my.df1 <- data.frame(ID = c(1:5),
                    Distance = c(2247,2247,1970,1964,1971),
                    SpeedKph = c(73,73,74,73,75))
my.df2 <- data.frame(ID = c(1:5),
                     Distance = c(2247,2247,1970,1964,1971),
                     SpeedKph = c(73,73,74,73,75))
my.df3 <- data.frame(ID = c(1:5),
                     Distance = c(2247,2247,1970,1964,1971),
                     SpeedKph = c(75,70,80,71,83))

my.list <- list(list1 = my.df1, list2 = my.df2, list3 = my.df3) 

```