NEWS | R Documentation |
Function countOccur(x)
, implemented in C, is comparable to base
R function table
. It returns a data.frame
and is between 3 to 50 times faster.
For more details, please see ?kit::countOccur
.
Functions funique
and fduplicated
now support matrices. Additionally, these
two functions should also have better performance compare to previous release.
Functions topn
has an additional argument hasna=TRUE
to indicates whether
data contains NA
value or not. If the data does not contain NA
values, the function
should be faster.
A few C functions have been added to subset data.frame
and matrix
as well as
do other operations. These functions are not exported or visible to the user but might become
available and callable at C level in the future.
Function fpos
was not properly handling NaN
and NA
for complex and
double. This should now be fixed. The function has also been changed in case the 'needle' and
'haysatck' are vectors so that a vector is returned.
Functions funique
and fduplicated
were not properly handling data containing
POSIX
data. This has now been fixed.
Functions fduplicated(x)
and funique(x)
,
implemented in C, are comparable to base
R functions duplicated
and unique
.
For more details, please see ?kit::funique
.
Functions psum
and pprod
have now better performance for type double and complex.
Function count(x, y)
now checks that x
and y
have the same class and
levels. So does pcount
.
Function pmean
was not callable at C level because of a typo. This is now fixed.
Function count(x, value)
, implemented in C, to simply count the number of times
an element value
occurs in a vector or in a list x
. For more details, please see
?kit::count
.
Function pmean(..., na.rm=FALSE)
, pall(..., na.rm=FALSE)
,
pany(..., na.rm=FALSE)
and pcount(..., value)
, implemented in C,
are similar to already available function psum
and pprod
. These functions respectively
apply base R functions mean
, all
and any
element-wise. For more details,
benchmarks and help, please see ?kit::pmean
.
Fix Solaris Unicode warnings for NEWS file. Benchmarks have been moved from the NEWS file to each function Rd file.
Fix some NA
edge cases for pprod
and psum
so these functions behave more
like base R function prod
and sum
.
Fix installation errors for version of R (<3.5.0).
Function fpos(needle, haystack, all=TRUE, overlap=TRUE)
, implemented in C, is
inspired by base function which
when used in the following form
which(x == y, arr.ind =TRUE
). Function fpos
returns the index(es) or position(s)
of a matrix/vector within a larger matrix/vector. Please see ?kit::fpos
for more
details.
Function iif(test, yes, no, na=NULL, tprom=FALSE, nThread=getOption("kit.nThread"))
,
originally contributed as fifelse
in package data.table, was moved to package kit
to be developed independently. Unlike the current version of fifelse
, iif
allows
type promotion like base function ifelse
. For further details about the differences
with fifelse
, as well as hutils::if_else
and dplyr::if_else
, please see
?kit::iif
.
Function nif(..., default=NULL)
, implemented in C, is inspired by
SQL CASE WHEN. It is comparable to dplyr function case_when
however it
evaluates it arguments in a lazy way (i.e only when needed). Function nif
was
originally contributed as function fcase
in the data.table package but then moved
to package kit so its development may resume independently. Please see ?kit::nif
for
more details.
Function pprod(..., na.rm=FALSE)
and psum(..., na.rm=FALSE)
,
implemented in C, are inspired by base function pmin
and pmax
. These new
functions work only for integer, double and complex types and do not recycle vectors. Please
see ?kit::psum
for more details.
Function setlevels(x, old, new, skip_absent=FALSE)
, implemented in C,
may be used to set levels of a factor object. Please see ?kit::setlevels
for more details.
Function topn(vec, n=6L, decreasing=TRUE)
, implemented in C, returns the top
largest or smallest n
values for a given numeric vector vec
. It is inspired by
dplyr::top_n
and equivalent to base functions order and sort in specific cases as shown
in the documentation. Please see ?kit::topn
for more details.
Function vswitch(x, values, outputs, default=NULL, nThread=getOption("kit.nThread"))
, implemented in C, is a vectorised version of base
R function switch
. This
function can also be seen as a particular case of function nif
. Please see
?kit::switch
for more details.