Last chance! 50% off unlimited learning
Sale ends in
The cSplit
function is designed to quickly and conveniently split
concatenated data into separate values.
cSplit(indt, splitCols, sep = ",", direction = "wide", fixed = TRUE,
drop = TRUE, stripWhite = TRUE, makeEqual = NULL,
type.convert = TRUE)
The input data.frame
or data.table
.
The column or columns that need to be split.
The values that serve as a delimiter within each column. This
can be a single value if all columns have the same delimiter, or a vector of
values in the same order as the delimiters in each of the splitCols
.
The desired direction of the results, either "wide"
or "long"
.
Logical. Should the split character be treated as a fixed
pattern (TRUE
) or a regular expression (FALSE
)? Defaults to TRUE
.
Logical. Should the original concatenated column be dropped?
Defaults to TRUE
.
Logical. If there is whitespace around the delimiter in
the concatenated columns, should it be stripped prior to splitting? Defaults
to TRUE
.
Logical. Should all groups be made to be the same length?
Defaults to FALSE
.
Logical. Should utils::type.convert()
be used to convert
the result of each column? This would add a little to the execution time.
A data.table
with the values split into new columns or rows.
# NOT RUN {
## Sample data
temp <- head(concat.test)
## Split the "Likes" column
cSplit(temp, "Likes")
## Split the "Likes" and "Hates" columns --
## they have different delimiters...
cSplit(temp, c("Likes", "Hates"), c(",", ";"))
## Split "Siblings" into a long form...
cSplit(temp, "Siblings", ",", direction = "long")
## Split "Siblings" into a long form, not removing whitespace
cSplit(temp, "Siblings", ",", direction = "long", stripWhite = FALSE)
## Split a vector
y <- c("a_b_c", "a_b", "c_a_b")
cSplit(data.frame(y), "y", "_")
# }
Run the code above in your browser using DataLab