Skip to content

Commit ca8183a

Browse files
authored
Merge pull request #49 from fastverse/development
Development
2 parents b4dd554 + c0fc87b commit ca8183a

File tree

9 files changed

+21
-1859
lines changed

9 files changed

+21
-1859
lines changed

.Rbuildignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
^\.appveyor\.yml$
33
^README\.md$
44
LICENSE
5+
.DS_Store
6+
^\.DS_Store$
7+
^\.DS\_Store$
8+
a.out.dSYM
9+
^a\.out\.dSYM$
510
^.*\.Rproj$
611
^\.Rproj\.user$
712
^_pkgdown\.yml$

DESCRIPTION

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ Package: kit
22
Type: Package
33
Title: Data Manipulation Functions Implemented in C
44
Version: 0.0.21
5-
Date: 2026-01-17
6-
Authors@R: c(person("Morgan", "Jacob", role = c("aut", "cre", "cph"), email = "[email protected]"),
7-
person("Sebastian", "Krantz", role = "ctb"))
8-
Author: Morgan Jacob [aut, cre, cph], Sebastian Krantz [ctb]
9-
Maintainer: Morgan Jacob <[email protected]>
5+
Date: 2026-01-22
6+
Authors@R: c(person("Morgan", "Jacob", role = c("aut", "cph"), email = "[email protected]"),
7+
person("Sebastian", "Krantz", role = c("ctb", "cre"), email = "[email protected]"))
8+
Author: Morgan Jacob [aut, cph], Sebastian Krantz [ctb, cre]
9+
Maintainer: Sebastian Krantz <[email protected]>
1010
Description: Basic functions, implemented in C, for large data manipulation. Fast vectorised ifelse()/nested if()/switch() functions, psum()/pprod() functions equivalent to pmin()/pmax() plus others which are missing from base R. Most of these functions are callable at C level.
1111
URL: https://fastverse.org/kit/, https://github.com/fastverse/kit
1212
License: GPL-3

NAMESPACE

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
useDynLib(kit, .registration = TRUE)
22

3+
importFrom(utils, packageVersion)
4+
35
export(
46
charToFact, count, countNA, countOccur, fduplicated, fpmin, fpmax, fpos, funique, iif, nif, nswitch,
57
pall, pallNA, pallv, pany, panyNA, panyv, pcount, pcountNA, pfirst, plast, pmean, pprod, prange, psum, setlevels, topn, uniqLen, vswitch, psort,

NEWS.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44

55
- Functions `fpmin`, `fpmax`, and `prange` are added as parallel equivalents of base R `pmin`, `pmax`, and range operations. These functions compute element-wise minimum, maximum, and range (max - min) across multiple vectors. They support integer, logical, and double types, with automatic type promotion. Implemented by @SebKrantz.
66

7+
### Notes
8+
9+
- The GitHub repo move to [fastverse/kit](https://github.com/fastverse/kit/), a new website exists at [fastverse.org/kit](https://fastverse.org/kit/), and Sebastian Krantz and the *fastverse* Team have taken responsibility to maintain the package. Morgan Jacob has stepped down, but remains available for consultation.
10+
711
# kit 0.0.20 <small>(2025-04-17)</small>
812

913
### Notes

R/call.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ vswitch = function(x, values, outputs, default=NULL, nThread=getOption("kit.
3636
omp = if(.Call(CompEnabledR)) "enabled" else "disabled" #nocov
3737
nth = getOption("kit.nThread") #nocov
3838
thd = if (nth > 1L) " threads)" else " thread)" #nocov
39-
packageStartupMessage(paste0("Attaching kit 0.0.20 (OPENMP ",omp," using ",nth,thd)) #nocov
39+
packageStartupMessage(paste0("Attaching kit ", packageVersion("kit"), " (OPENMP ",omp," using ",nth,thd)) #nocov
4040
} #nocov
4141

4242
.onLoad = function(libname, pkgname) { #nocov

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ install.packages("kit", repos = "https://fastverse.r-universe.dev")
2727
Vector-valued functions operating in parallel over vectors or data frames:
2828

2929
- **`psum`, `pprod`, `pmean`**: Parallel sum, product, and mean
30-
- **`fpmin`, `fpmax`, `prange`**: Parallel minimum, maximum, and range (complements base `pmin`/`pmax` with `na.rm` support)
30+
- **`fpmin`, `fpmax`, `prange`**: (Fast) parallel minimum, maximum, and range
3131
- **`pall`, `pany`**: Parallel all/any operations
3232
- **`pcount`, `pcountNA`**: Count occurrences of values or NAs
3333
- **`pfirst`, `plast`**: First/last non-missing values

tests/test_kit.R

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1899,8 +1899,9 @@ rm(x, y, z, x1, y1, z1, base_pfirst, base_plast)
18991899

19001900
rm(check,count,countNA,countOccur,fduplicated,fpos,funique,iif,nswitch,nif,pall,pany,pcount,pcountNA,
19011901
pmean,pprod,psum,setlevels,topn,uniqLen,vswitch,psort,charToFact,shareData,getData,clearData,
1902-
pallNA, pallv, panyv, panyNA, pfirst, plast)
1902+
pallNA, pallv, panyv, panyNA, pfirst, plast, fpmax, fpmin, prange)
19031903

19041904
# --------------------------------------------------------------------------------------------------
19051905
# END
19061906
# --------------------------------------------------------------------------------------------------
1907+

tests/test_kit.Rout.save

Lines changed: 0 additions & 1850 deletions
This file was deleted.

vignettes/introduction.Rmd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ psum(df)
6161

6262
### Row-wise Min, Max, and Range
6363

64-
`fpmin()`, `fpmax()`, and `prange()` compute parallel minimum, maximum, and range (max - min) respectively. They complement base R's `pmin()` and `pmax()`, with the added benefit of supporting `na.rm` and working efficiently with data frames.
64+
`fpmin()`, `fpmax()`, and `prange()` compute parallel minimum, maximum, and range (max - min) respectively. They complement base R's `pmin()` and `pmax()`, providing greater performance and the ability to work efficiently with data frames.
6565

6666
```{r}
6767
x <- c(1, 3, NA, 5)

0 commit comments

Comments
 (0)