Github user felixcheung commented on a diff in the pull request:
https://github.com/apache/spark/pull/11220#discussion_r53126613
--- Diff: R/pkg/R/DataFrame.R ---
@@ -303,8 +303,28 @@ setMethod("colnames",
#' @rdname columns
#' @name colnames<-
setMethod("colnames<-",
- signature(x = "DataFrame", value = "character"),
+ signature(x = "DataFrame"),
function(x, value) {
+
+ # Check parameter integrity
+ if (class(value) != "character") {
+ stop("Invalid column names.")
+ }
+
+ if (length(value) != ncol(x)) {
+ stop(
+ "Column names must have the same length as the number of
columns in the dataset.")
+ }
+
+ if (any(is.na(value))) {
+ stop("Column names cannot be NA.")
+ }
+
+ # Check if the column names have . in it
+ if (any(regexec(".", value, fixed=TRUE)[[1]][1] != -1)) {
--- End diff --
This might seem rather restrictive? As this is possibly fixed by
https://issues.apache.org/jira/browse/SPARK-11976
Instead of hardcoding the check here, why not just let this through? As of
now a column cannot have '.' in it anyway
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]