Marc Kupietz | bb7d232 | 2019-10-06 21:42:34 +0200 | [diff] [blame] | 1 | |
| 2 | #' Convert corpus frequency table to instances per million. |
| 3 | #' |
| 4 | #' Convenience function for converting frequency tables to instances per |
| 5 | #' million. |
| 6 | #' |
| 7 | #' Given a table with columns \code{f}, \code{conf.low}, and \code{conf.high}, \code{ipm} ads a \code{column ipm} |
| 8 | #' und multiplies conf.low and \code{conf.high} with 10^6. |
| 9 | #' |
| 10 | #' @param df table returned from \code{\link{frequencyQuery}} |
| 11 | #' |
| 12 | #' @return original table with additional column \code{ipm} and converted columns \code{conf.low} and \code{conf.high} |
| 13 | #' @export |
| 14 | #' |
| 15 | #' @importFrom dplyr .data |
| 16 | #' |
| 17 | #' @examples |
| 18 | #' new("KorAPConnection") %>% frequencyQuery("Test", paste0("pubDate in ", 2000:2002)) %>% ipm() |
| 19 | ipm <- function(df) { |
| 20 | df %>% |
| 21 | mutate(ipm = .data$f * 10^6, conf.low = .data$conf.low * 10^6, conf.high = .data$conf.high * 10^6) |
| 22 | } |
| 23 | |
| 24 | |
Marc Kupietz | d68f971 | 2019-10-06 21:48:00 +0200 | [diff] [blame^] | 25 | #' Plot frequency by year graphs with confidence intervals |
| 26 | #' |
| 27 | #' Convenience function for plotting typical frequency by year graphs with confidence intervals using ggplot2. |
| 28 | #' |
| 29 | #' @examples |
| 30 | #' library(ggplot2) |
| 31 | #' kco <- new("KorAPConnection", verbose=TRUE) |
| 32 | #' expand_grid(condition = c("textDomain = /Wirtschaft.*/", "textDomain != /Wirtschaft.*/"), |
| 33 | #' year = (2002:2018)) %>% |
| 34 | #' cbind(frequencyQuery(kco, "[tt/l=Heuschrecke]", |
| 35 | #' paste0(.$condition," & pubDate in ", .$year))) %>% |
| 36 | #' ipm() %>% |
| 37 | #' ggplot(aes(year, ipm, fill = condition, color = condition, ymin = conf.low, ymax = conf.high)) + |
| 38 | #' geom_freq_by_year_ci() |
| 39 | #' |
| 40 | #' @importFrom ggplot2 geom_ribbon geom_line geom_point theme element_text scale_x_continuous |
| 41 | #' |
| 42 | #' @export |
| 43 | geom_freq_by_year_ci <- function() { |
| 44 | list( |
| 45 | geom_ribbon(alpha = .3, linetype = 0, show.legend = FALSE), |
| 46 | geom_line(), |
| 47 | geom_point(), |
| 48 | theme(axis.text.x = element_text(angle = 45, hjust = 1)), |
| 49 | scale_x_continuous(breaks = function(x) seq(ceiling(x[1]), floor(x[2]), by = 1 + floor(((x[2]-x[1])/30))))) |
| 50 | } |
| 51 | |