Author/Maintainer : Ananda Mahto Email : ananda@mahto.info URL : http://github.com/mrdwab/splitstackshape BugReports : http://github.com/mrdwab/splitstackshape/issues
Updated to pass CRAN tests due to changes in the RNG sample kinds.
22 July 2018
Interim release to help the data.table
team with reverse dependency checks.
05 April 2018
Preparing for transition to V2 of the splitstackshape package.
- Redundant functions are being marked using
.Deprecated()
. These includeconcat.split.multiple
andconcat.split.compact
, both of which can now just directly usecSplit
. cSplit_f
has been removed as it would no longer be relevant in V2 of the package and isn't entirely reliable the way it has been written.fread
, on which the function was based, has underwent many changes since the function was written.
Tests have been added covering most basic cases, but not for all potential bugs that have been fixed in V2 of the package.
stratified
has been fixed.cSplit_f
has been removed.
29 March 2018
Reshape()
bugfix. Reported at https://stackoverflow.com/q/49281838/1270695.listCol_w()
bugfix. Thanks to @jazzurro.cSplit_e()
bugfix. Reported at https://stackoverflow.com/q/48576331/1270695
20 March 2018
- Updated the NAMESPACE to address the NOTES when building the package
23 October 2014
listCol_l
andlistCol_w
added as utilities for unlisting or flattening columns stored aslist
s indata.frame
s anddata.table
s.
18 October 2014
Bug in :::.stripWhite
when using "|"
as a delimiter fixed.
13 October 2014
See 1.3.0 -- 1.3.8 for details of changes.
cSplit
now replaces concat.split.compact
and concat.split.multiple
in
concat.split
; cSplit_f
has been introduced as a related function. Other new
functions are stratified
and expandRows
.
12 October 2014
-
cSplit_f
The "_f" is both representative of
fread
, which this function uses to split the concatenated cells, and "fixed", which is indicative of the fact that this function would only work if the number of resulting columns is the same for each row in the input. -
expandRows
"Expand" the rows of a
data.frame
or adata.table
either by values specified in a column of the input dataset or by a vector specifying the number of times to repeat each row.
Reshape
,Stacked
, andmerged.stack
now try to guess the "id.vars
" values based on the values in "var.stubs
". The values can still be specified manually.
08/10 October 2014
Incremental cleanups and additions to get ready for V1.4.0.
concat.split.compact
andconcat.split.multiple
are now simply wrappers forcSplit
and no longer use:::read.concat
to split up the values.concat.split.expanded
andconcat.split.list
now madedata.table
compatable.concat.split.list
andconcat.split.expanded
given short name forms (cSplit_l
andcSplit_e
).
Added functions:
-
cSplit
Before the release of 1.4.0, the basic
concat.split*
functions would become simple wrappers forcSplit
, which is much more efficient than the previous implementations. The earlier functions will remain for compatability purposes. SincecSplit
is already in use, it will be an exported function. -
stratified
A function to take fixed or proportional samples by group from a
data.frame
ordata.table
.
Non-exported additions:
:::.collapseMe
:::.stripWhite
:::Names
:::trim
:::vGrep
27 October 2013
- Due to changes resulting from the introduction of
numMat
andcharMat
,concat.split.expanded
andconcat.split
now have an additional argument,type
, which takes a value of either"numeric"
or"character"
. It is set to a default oftype = "numeric"
in the case ofconcat.split.expanded
andtype = NULL
in the case ofconcat.split
.
Added functions:
-
:::numMat
numMat
replacesbinaryMat
andvalueMat
for numeric data. -
:::charMat
charMat
replacescharBinaryMat
for string data.
Dropped functions:
Due to changes introduced after recommendations by @flodel, the following
functions have been rewritten as numMat
and charMat
- :::binaryMat
- :::valueMat
- :::charBinaryMat
20 October 2013
New function added:
-
:::charBinaryMat
concat.split.expanded
did not previously support expanding "character" data. Due to prompting by @juba,charBinaryMat
has been included to handle such cases.
27 August 2013
- Further refinement of
Stacked
andmerge.stack
.merge.stack
is now faster thanReshape
, at least for large datasets.
18 August 2013
Stacked
andmerge.stack
now made MUCH faster using almost a puredata.table
solution.
17 August 2013
- When
Stacked
results in a list of length 1, it is "unlisted" before being returned. Reshape
(and as a result,concat.split.multiple(..., direction = "long")
) has been enhanced by the addition of a feature to automatically add an ID variable if the present "IDs" are not unique.
New functions added:
- getanID
- :::Names
16 August 2013
read.concat
updated to usecount.fields
to determine the correct number of columns that the resultingdata.frame
should have.
Reshape
now has an option to remove therownames
from the output, set toTRUE
by default.
12 August 2013
Initial commit of splitstacshape with the following main functions:
concat.split
(plus:concat.split.compact
,concat.split.expanded
,concat.split.list
, andconcat.split.multiple
) -- To split concatenated data into more manageable data formats.Reshape
-- To help base R's reshape function handle unbalanced data and simplify the reshape syntax (wide to long only).Stacked
-- To selectively stack columns of a data.frame.
Non-exported functions are indicated with :::
before their names.
concat.split.compact
concat.split.expanded
concat.split.list
concat.split.multiple
concat.split
merged.stack
Reshape
Stacked
:::binaryMat
:::FacsToChars
:::NoSep
:::othernames
:::read.concat
:::valueMat