| Type: | Package |
| Title: | Dimensional Data Frames |
| Version: | 0.3.1 |
| Description: | Provides a 'dibble' that implements data cubes (derived from 'dimensional tibble'), and allows broadcasting by dimensional names. |
| License: | MIT + file LICENSE |
| Encoding: | UTF-8 |
| Imports: | dplyr, memoise, pillar, purrr (≥ 1.0.0), rlang, tibble, tidyr, tidyselect, vctrs |
| RoxygenNote: | 7.3.2 |
| Suggests: | covr, testthat (≥ 3.0.0) |
| Config/testthat/edition: | 3 |
| Depends: | R (≥ 4.3) |
| URL: | https://github.com/UchidaMizuki/dibble, https://uchidamizuki.github.io/dibble/ |
| BugReports: | https://github.com/UchidaMizuki/dibble/issues |
| NeedsCompilation: | no |
| Packaged: | 2025-02-06 15:34:00 UTC; uchid |
| Author: | Mizuki Uchida [aut, cre] |
| Maintainer: | Mizuki Uchida <uchidamizuki@vivaldi.net> |
| Repository: | CRAN |
| Date/Publication: | 2025-02-06 16:00:02 UTC |
dibble: Dimensional Data Frames
Description
Provides a 'dibble' that implements data cubes (derived from 'dimensional tibble'), and allows broadcasting by dimensional names.
Author(s)
Maintainer: Mizuki Uchida uchidamizuki@vivaldi.net
See Also
Useful links:
Report bugs at https://github.com/UchidaMizuki/dibble/issues
Apply functions over array margins
Description
Applying a function to margins of a dibble or array, including a matrix.
Usage
apply(X, MARGIN, FUN, ...)
## Default S3 method:
apply(X, MARGIN, FUN, ..., simplify = TRUE)
## S3 method for class 'tbl_ddf'
apply(X, MARGIN, FUN, ...)
## S3 method for class 'ddf_col'
apply(X, MARGIN, FUN, ...)
Arguments
X |
A dibble or array, including a matrix. |
MARGIN |
An integer or character vector giving the subscripts which the function will be applied over. |
FUN |
A function to be applied. |
... |
Optional arguments to FUN. |
simplify |
A logical indicating whether results should be simplified if possible. |
Details
apply() overrides base::apply() to make it generic. The default method
calls the base version.
Value
A dibble if X is a dibble. See base::apply() for the return value
of the default method.
See Also
Examples
x <- array(1:24, 2:4,
list(axis1 = letters[1:2],
axis2 = letters[1:3],
axis3 = letters[1:4]))
apply(x, 2:3, sum)
apply(as_dibble(x), 2:3, sum)
apply(x, c("axis2", "axis3"), sum)
apply(as_dibble(x), c("axis2", "axis3"), sum)
Coerce an object to a dibble
Description
as_dibble() turns an object into a dimensional data frame called a dibble.
Usage
as_dibble(x, ...)
## Default S3 method:
as_dibble(x, ...)
## S3 method for class 'rowwise_df'
as_dibble(x, ...)
## S3 method for class 'grouped_df'
as_dibble(x, ...)
## S3 method for class 'ddf_col'
as_dibble(x, ...)
## S3 method for class 'tbl_ddf'
as_dibble(x, ...)
Arguments
x |
An object. |
... |
Unused, for extensibility. |
Value
A dibble.
Basic matrices and arrays
Description
Create basic matrices and arrays.
Usage
eye(x, ...)
## Default S3 method:
eye(x, y = x, ...)
## S3 method for class 'matrix'
eye(x, ...)
## S3 method for class 'ddf_col'
eye(x, ...)
## S3 method for class 'tbl_ddf'
eye(x, ...)
ones(x, ...)
## Default S3 method:
ones(x, y = x, ...)
## S3 method for class 'array'
ones(x, ...)
## S3 method for class 'ddf_col'
ones(x, ...)
## S3 method for class 'tbl_ddf'
ones(x, ...)
zeros(x, ...)
## Default S3 method:
zeros(x, y = x, ...)
## S3 method for class 'array'
zeros(x, ...)
## S3 method for class 'ddf_col'
zeros(x, ...)
## S3 method for class 'tbl_ddf'
zeros(x, ...)
Arguments
x |
An object. |
... |
Other arguments passed on to methods. |
y |
A scalar integer. |
Details
These functions override base functions to make them generic. The default methods call the base versions.
Value
A dibble if x is a dibble. Otherwise, returns a matrix or an array.
Broadcast to a new dimension
Description
Broadcasts the dimension of the object to a new dimension.
Usage
broadcast(x, dim_names = NULL, ...)
## Default S3 method:
broadcast(x, dim_names = NULL, ...)
## S3 method for class 'ddf_col'
broadcast(x, dim_names, ...)
## S3 method for class 'tbl_ddf'
broadcast(x, dim_names, ...)
Arguments
x |
A dibble, vector, or array. |
dim_names |
A character vector or list of dimension names. |
... |
Unused, for extensibility. |
Details
Operations between dibbles are automatically broadcasted, but for safety
reasons, warnings are issued.
broadcast() can suppress the warnings if dim_names matches the dimension
of x.
Value
A dibble.
Examples
x <- broadcast(1:2,
list(axis1 = letters[1:2]))
y <- broadcast(1:3,
list(axis2 = letters[1:3]))
broadcast(x * y, c("axis1", "axis2"))
Matrix diagonals
Description
Extract or replace the diagonal of a matrix, or construct a diagonal matrix.
Usage
diag(x, ...)
## Default S3 method:
diag(x = 1, nrow, ncol, names, ...)
## S3 method for class 'tbl_ddf'
diag(x, axes, ...)
## S3 method for class 'ddf_col'
diag(x, axes, ...)
diag(x, ...) <- value
## Default S3 replacement method:
diag(x, ...) <- value
## S3 replacement method for class 'tbl_ddf'
diag(x, ...) <- value
## S3 replacement method for class 'ddf_col'
diag(x, ...) <- value
Arguments
x |
A dibble, matrix, vector or 1D array, or missing. |
... |
Unused, for extensibility. |
nrow, ncol |
Optional dimensions for the result when x is not a matrix. |
names |
(When x is a matrix) logical indicating if the resulting vector, the diagonal of x, should inherit names from dimnames(x) if available. |
axes |
A character vector of axes. |
value |
Replacement values. |
Details
These functions override base functions to make them generic. The default methods call the base versions.
Value
A dibble if x is a dibble. See base::diag() for the return values
of the default methods.
Build a dimensional data frame
Description
dibble() constructs a dimensional data frame called a dibble.
Usage
dibble(..., .dim_names = NULL)
Arguments
... |
A set of name-measure pairs. |
.dim_names |
A list of dimension names. |
Details
Manipulation functions:
mutate()
rename()
select() & relocate()
slice()
Value
A dibble.
Constructs a dibble by one or more variables
Description
dibble_by() constructs a dibble by one or more variables.
Usage
dibble_by(x, ..., .names_sep = NULL)
Arguments
x |
A data frame or a dibble. |
... |
Variables. |
.names_sep |
Passed to |
Value
A dibble.
Maxima and Minima
Description
Returns the parallel maxima and minima of the input values.
Usage
pmax(..., na.rm = FALSE)
## Default S3 method:
pmax(..., na.rm = FALSE)
## S3 method for class 'ddf_col'
pmax(..., na.rm = FALSE)
## S3 method for class 'tbl_ddf'
pmax(..., na.rm = FALSE)
pmin(..., na.rm = FALSE)
## Default S3 method:
pmin(..., na.rm = FALSE)
## S3 method for class 'ddf_col'
pmin(..., na.rm = FALSE)
## S3 method for class 'tbl_ddf'
pmin(..., na.rm = FALSE)
Arguments
... |
Dibbles, numeric or character arguments. |
na.rm |
a logical indicating whether missing values should be removed. |
Details
These functions override base functions to make them generic. The default methods call the base versions.
Value
A dibble if ... are dibbles. See base::pmax() and base::pmin()
for the return value of the default method.
See Also
Conditional element selection
Description
Selects elements from either yes or no depending on whether test is
TRUE or FALSE.
Usage
ifelse(test, yes, no, ...)
## Default S3 method:
ifelse(test, yes, no, ...)
## S3 method for class 'tbl_ddf'
ifelse(test, yes, no, ...)
## S3 method for class 'ddf_col'
ifelse(test, yes, no, ...)
Arguments
test |
An object which can be coerced to logical mode. |
yes |
Return values for true elements of test. |
no |
Return values for false elements of test. |
... |
Unused, for extensibility. |
Details
ifelse() overrides base::ifelse() to make it generic. The default method
calls the base version.
Value
A dibble if test is a dibble. See base::ifelse() for the return
value of the default method.
See Also
Test if the object is a dibble
Description
Test if the object is a dibble
Usage
is_dibble(x)
Arguments
x |
An object. |
Value
A logical.
The number of rows/columns
Description
nrow() and ncol() return the number of rows or columns present in x.
Usage
nrow(x, ...)
## Default S3 method:
nrow(x, ...)
## S3 method for class 'ddf_col'
nrow(x, ...)
## S3 method for class 'tbl_ddf'
nrow(x, ...)
ncol(x, ...)
## Default S3 method:
ncol(x, ...)
## S3 method for class 'ddf_col'
ncol(x, ...)
## S3 method for class 'tbl_ddf'
ncol(x, ...)
Arguments
x |
An object. |
... |
Other arguments passed on to methods. |
Details
These functions override base functions to make them generic. The default methods call the base versions.
Value
An integer or NULL.
Objects exported from other packages
Description
These objects are imported from other packages. Follow the links below to see their documentation.
- dplyr
Row and column names
Description
Retrieve or set the row or column names of a matrix-like object.
Usage
rownames(x, ...)
## Default S3 method:
rownames(x, ...)
## S3 method for class 'ddf_col'
rownames(x, ...)
## S3 method for class 'tbl_ddf'
rownames(x, ...)
colnames(x, ...)
## Default S3 method:
colnames(x, ...)
## S3 method for class 'ddf_col'
colnames(x, ...)
## S3 method for class 'tbl_ddf'
colnames(x, ...)
Arguments
x |
A matrix-like object. |
... |
Other arguments passed on to methods. |
Details
These functions override base functions to make them generic. The default methods call the base versions.
Value
A list of row/column names.