Skip to content

Commit

Permalink
Check for correct input in arrange/mutate/summarise
Browse files Browse the repository at this point in the history
  • Loading branch information
hadley committed Oct 11, 2012
1 parent cc34a2e commit 07680cc
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 0 deletions.
2 changes: 2 additions & 0 deletions R/helper-arrange.r
Expand Up @@ -23,6 +23,8 @@
#' # Sort with displacement in descending order #' # Sort with displacement in descending order
#' arrange(myCars, cyl, desc(disp)) #' arrange(myCars, cyl, desc(disp))
arrange <- function(df, ...) { arrange <- function(df, ...) {
stopifnot(is.data.frame(df))

ord <- eval(substitute(order(...)), df, parent.frame()) ord <- eval(substitute(order(...)), df, parent.frame())
if(length(ord) != nrow(df)) { if(length(ord) != nrow(df)) {
stop("Length of ordering vectors don't match data frame size", stop("Length of ordering vectors don't match data frame size",
Expand Down
2 changes: 2 additions & 0 deletions R/helper-mutate.r
Expand Up @@ -26,6 +26,8 @@
#' system.time(transform(baseball, avg_ab = ab / g)) #' system.time(transform(baseball, avg_ab = ab / g))
#' system.time(mutate(baseball, avg_ab = ab / g)) #' system.time(mutate(baseball, avg_ab = ab / g))
mutate <- function(.data, ...) { mutate <- function(.data, ...) {
stopifnot(is.data.frame(.data) || is.list(.data) || is.environment(.data))

cols <- as.list(substitute(list(...))[-1]) cols <- as.list(substitute(list(...))[-1])
cols <- cols[names(cols) != ""] # Silently drop unnamed columns cols <- cols[names(cols) != ""] # Silently drop unnamed columns


Expand Down
2 changes: 2 additions & 0 deletions R/helper-summarise.r
Expand Up @@ -21,6 +21,8 @@
#' duration = max(year) - min(year), #' duration = max(year) - min(year),
#' nteams = length(unique(team))) #' nteams = length(unique(team)))
summarise <- function(.data, ...) { summarise <- function(.data, ...) {
stopifnot(is.data.frame(.data) || is.list(.data) || is.environment(.data))

cols <- as.list(substitute(list(...))[-1]) cols <- as.list(substitute(list(...))[-1])


# ... not a named list, figure out names by deparsing call # ... not a named list, figure out names by deparsing call
Expand Down

0 comments on commit 07680cc

Please sign in to comment.