---
title: "Data Piling"
author: "Eric Bridgeford"
date: "`r Sys.Date()`"
output: rmarkdown::html_vignette
vignette: >
  %\VignetteIndexEntry{dp}
  %\VignetteEngine{knitr::rmarkdown}
  %\VignetteEncoding{UTF-8}
---

```{r}
require(lolR)
require(ggplot2)
require(MASS)
n=400
d=30
r=3
```

Data for this notebook will be `n=400` examples of `d=30` dimensions.

# DP

## Stacked Cigar Simulation

We first visualize the first `2` dimensions:

```{r, fig.width=5}
testdat <- lol.sims.cigar(n, d)
X <- testdat$X
Y <- testdat$Y

data <- data.frame(x1=X[,1], x2=X[,2], y=Y)
data$y <- factor(data$y)
ggplot(data, aes(x=x1, y=x2, color=y)) +
  geom_point() +
  xlab("x1") +
  ylab("x2") +
  ggtitle("Simulated Data")
```

Projecting with MDP to `K-1=1` dimension and visualizing:

```{r, fig.width=5}
result <- lol.project.dp(X, Y)

data <- data.frame(x1=result$Xr[,1], y=Y)
data$y <- factor(data$y)
ggplot(data, aes(x=x1, y=y, color=y)) +
  geom_point() +
  xlab("x1") +
  ylab("Class") +
  ggtitle("Projected Data using MDP")
```

## Trunk Simulation

We visualize the first `2` dimensions:

```{r, fig.width=5}
testdat <- lol.sims.rtrunk(n, d)
X <- testdat$X
Y <- testdat$Y

data <- data.frame(x1=X[,1], x2=X[,2], y=Y)
data$y <- factor(data$y)
ggplot(data, aes(x=x1, y=x2, color=y)) +
  geom_point() +
  xlab("x1") +
  ylab("x2") +
  ggtitle("Simulated Data")
```

Projecting with MDP to `K-1=1` dimensions and visualizing:

```{r, fig.width=5}
result <- lol.project.dp(X, Y)

data <- data.frame(x1=result$Xr[,1], y=Y)
data$y <- factor(data$y)
ggplot(data, aes(x=x1, y=y, color=y)) +
  geom_point() +
  xlab("x1") +
  ylab("Class") +
  ggtitle("Projected Data using MDP")
```

## Rotated Trunk Simulation

We visualize the first `2` dimensions:

```{r, fig.width=5}
testdat <- lol.sims.rtrunk(n, d, rotate=TRUE)
X <- testdat$X
Y <- testdat$Y

data <- data.frame(x1=X[,1], x2=X[,2], y=Y)
data$y <- factor(data$y)
ggplot(data, aes(x=x1, y=x2, color=y)) +
  geom_point() +
  xlab("x1") +
  ylab("x2") +
  ggtitle("Simulated Data")
```

Projecting with MDP to `K-1=1` dimensions and visualizing:

```{r, fig.width=5}
result <- lol.project.dp(X, Y)

data <- data.frame(x1=result$Xr[,1], y=Y)
data$y <- factor(data$y)
ggplot(data, aes(x=x1, y=y, color=y)) +
  geom_point() +
  xlab("x1") +
  ylab("Class") +
  ggtitle("Projected Data using MDP")
```
