R: Extract or Replace Parts of a Grouped Data Object

Extract.grouped.data {actuar} | R Documentation

## Extract or Replace Parts of a Grouped Data Object

### Description

Extract or replace subsets of grouped data objects.

### Usage

    ## S3 method for class 'grouped.data'
    x[i, j]
    ## S3 replacement method for class 'grouped.data'
    x[i, j] <- value

### Arguments

`x` | an object of class `grouped.data`.
`i, j` | elements to extract or replace. `i, j` are `numeric` or `character` or, for `[` only, empty. Numeric values are coerced to integer as if by `as.integer`. For replacement by `[`, a logical matrix is allowed, but not replacement in the group boundaries and group frequencies simultaneously.
`value` | a suitable replacement value.

### Details

Objects of class `"grouped.data"` can mostly be indexed like data frames, with the following restrictions:

1. For `[`, the extracted object must keep a group boundaries column and at least one group frequencies column to remain of class `"grouped.data"`;

2. For `[<-`, it is not possible to replace group boundaries and group frequencies simultaneously;

3. When replacing group boundaries, `length(value) == length(i) + 1`.

`x[, 1]` will return the plain vector of group boundaries.

Replacement of non adjacent group boundaries is not possible for obvious reasons.

Otherwise, extraction and replacement should work just like for data frames.

### Value

For `[` an object of class `"grouped.data"`, a data frame or a vector.

For `[<-` an object of class `"grouped.data"`.

### Note

Currently `[[`, `[[<-`, `$` and `$<-` are not specifically supported, but should work as usual on group frequency columns.

### Author(s)

Vincent Goulet vincent.goulet@act.ulaval.ca

### See Also

`[.data.frame` for extraction and replacement methods of data frames, `grouped.data` to create grouped data objects.

### Examples

    data(gdental)

    (x <- gdental[1])         # select column 1
    class(x)                  # no longer a grouped.data object
    class(gdental[2])         # same
    gdental[, 1]              # group boundaries
    gdental[, 2]              # group frequencies

    gdental[1:4,]             # a subset
    gdental[c(1, 3, 5),]      # avoid this

    gdental[1:2, 1] <- c(0, 30, 60) # modified boundaries
    gdental[, 2] <- 10              # modified frequencies
    ## Not run: gdental[1, ] <- 2   # not allowed

[Package actuar version 3.0-0 Index]