-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcluster2d.Rmd
66 lines (52 loc) · 1.47 KB
/
cluster2d.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
---
title: "Kaggle Titanic Training Set - 2D Cluster Analysis"
date: "`r format(Sys.time(), '%d %B %Y')`"
output:
flexdashboard::flex_dashboard:
orientation: columns
vertical_layout: fill
social: menu
runtime: shiny
---
```{r setup, include=FALSE}
library(flexdashboard)
library(shiny)
```
Column {.sidebar}
-----------------------------------------------------------------------
```{r}
setwd('C:\\Users\\Philippe\\workspace\\shinyfun\\shinyfun')
train = read.csv('train.csv')
selectInput('xcol', 'X Variable', names(train))
selectInput('ycol', 'Y Variable', names(train),
selected=names(train)[[2]])
numericInput('clusters', 'Cluster count', 3,
min = 1, max = 9)
```
Column
-----------------------------------------------------------------------
### K Means
```{r}
palette(c("#E41A1C", "#377EB8", "#4DAF4A", "#984EA3",
"#FF7F00", "#FFFF33", "#A65628", "#F781BF", "#999999"))
# Combine the selected variables into a new data frame
selectedData <- reactive({
train[, c(input$xcol, input$ycol)]
})
clusters <- reactive({
kmeans(selectedData(), input$clusters)
})
renderPlot({
par(mar = c(5.1, 4.1, 0, 1))
plot(selectedData(),
col = clusters()$cluster,
pch = 20, cex = 3)
points(clusters()$centers, pch = 4, cex = 4, lwd = 4)
})
```
Column
-----------------------------------------------------------------------
```{r}
library(knitr)
kable(train)
```