---
title: "Reshape df"
output: html_notebook
---

###1. Convert pivot format to DB format

####We have a data frame M3FORACI as pivot format

```{r}
head(M3FORACI)
```

####Now, we want to convert this pivot format to DB format
Using function *melt* of *reshape* package:

```{r}
dat1 <- melt(M3FORACI, id = c("series", "method", "timestamp", "origin_timestamp"), measure.vars = c("forecast", "Lo80", "Hi80", "Lo95", "Hi95"))
```

The result will as follows:
```{r}
head(dat1)
```

###2. Convert DB format to pivot format (convert dat1 to M3FORACI)
#### Using function *spread* in  "tidyr" pacakge:

```{r}

dat2 <- spread(dat1, key = variable, value = value)
```

#### This is the result of dat2:

```{r}
head(dat2)
```

