July 1, 2014
Goals
Challenges
xyplot(mpg ~ wt | as.factor(cyl), data = mtcars)
vs.
par(mfrow = c(1,3)) plot(mtcars$wt[mtcars$cyl == 4], mtcars$mpg[mtcars$cyl == 4]) plot(mtcars$wt[mtcars$cyl == 6], mtcars$mpg[mtcars$cyl == 6]) plot(mtcars$wt[mtcars$cyl == 8], mtcars$mpg[mtcars$cyl == 8])
## null device ## 1
MakeWordBar
## function (text, min.freq = 2, top = 50, format = "count", col = "steelblue",
## color, ...)
## {
## if (!missing(color)) {
## stop("Remember to use the argument 'col' and not 'color'.")
## }
## if (class(text)[1] != "VCorpus") {
## stop("Remember to initialize text using initializeText()")
## }
## if (!missing(format) & (format != "count" & format != "percent")) {
## stop("invalid 'format' argument. 'format' must either be 'count' or 'percent'")
## }
## old.par <- par(no.readonly = TRUE)$mar
## tdm <- TermDocumentMatrix(text)
## m <- as.matrix(tdm)
## v <- sort(rowSums(m), decreasing = T)
## d <- data.frame(word = names(v), freq = v, row.names = NULL)
## d <- d[d$freq >= min.freq, ]
## if (format == "count") {
## if (!missing(top) & (top <= 0)) {
## stop("'top' must be a number greater than 0")
## }
## top.words <- head(d$freq, n = top)
## top.words.names <- head(d$word, n = top)
## largest.word <- max(nchar(as.character(top.words.names)))
## if (largest.word > 8) {
## adj = (largest.word - 7)/3
## par(mar = old.par + c(adj, 0, 0, 0))
## }
## else {
## par(mar = old.par)
## }
## }
## if (format == "percent") {
## if (missing(top)) {
## stop("'top' argument must be specificed when using format = 'percent'")
## }
## if (!missing(top) & (top <= 0 | top > 100)) {
## stop("'top' must be a number greater than 0 and less than or equal to 100")
## }
## n <- floor(nrow(d) * top/100)
## top.words <- head(d$freq, n = n)
## top.words.names <- head(d$word, n = n)
## largest.word <- max(nchar(as.character(top.words.names)))
## if (largest.word > 8) {
## adj = (largest.word - 7)/3
## par(mar = old.par + c(adj, 0, 0, 0))
## }
## else {
## par(mar = old.par)
## }
## }
## barplot(top.words, names.arg = top.words.names, las = 2,
## col = col, border = "white", ...)
## par(mar = old.par)
## }
## <environment: namespace:MobilizeSimple>
data("crude")
crude <- ProcessText(crude, removestopwords = TRUE)
MakeWordBar(crude, top=10)