pseries {plm} | R Documentation

## panel series

### Description

A class for panel series for which several useful computations and data transformations are available.

### Usage

    between(x, ...)
    Between(x, ...)
    Within(x, ...)
    ## S3 method for class 'pseries'
    between(x, effect = c("individual", "time", "group"), ...)
    ## S3 method for class 'pseries'
    Between(x, effect = c("individual", "time", "group"), ...)
    ## S3 method for class 'pseries'
    Within(x, effect = c("individual", "time", "group", "twoways"), ...)
    ## S3 method for class 'pseries'
    summary(object, ...)
    ## S3 method for class 'summary.pseries'
    print(x, ...)
    ## S3 method for class 'pseries'
    as.matrix(x, idbyrow = TRUE, ...)

### Arguments

`x, object` | a `pseries` or a `summary.pseries` object,
`effect` | character string indicating the `"individual"` or `"time"` effect,
`idbyrow` | if `TRUE` in the `as.matrix` method, the lines of the matrix are the individuals,
`...` | further arguments, e. g. `na.rm = TRUE` for transformation functions like `beetween`, see Details and Examples.

### Details

The functions `between`, `Between`, and `Within` perform specific data transformations, i. e. the between and within transformation.

`between` returns a vector containing the individual means (over time) with the length of the vector equal to the number of individuals (if `effect = "individual"` (default); if `effect = "time"`, it returns the time means (over individuals)). `Between` duplicates the values and returns a vector which length is the number of total observations. `Within` returns a vector containing the values in deviation from the individual means (if `effect = "individual"`, from time means if `effect = "time"`), the so called demeaned data.

For `between`, `Between`, and `Within` in presence of NA values it can be useful to supply `na.rm = TRUE` as an additional argument to keep as many observations as possible in the resulting transformation, see also Examples.

### Value

All these functions return an object of class `pseries`, except:
`between`, which returns a numeric vector, `as.matrix`, which returns a matrix.

### Author(s)

Yves Croissant

### See Also

For more functions on class 'pseries' see `lag`, `lead`, `diff` for lagging values, leading values (negative lags) and differencing.

### Examples

    # First, create a pdata.frame
    data("EmplUK", package = "plm")
    Em <- pdata.frame(EmplUK)

    # Then extract a series, which becomes additionally a pseries
    z <- Em$output
    class(z)

    # obtain the matrix representation
    as.matrix(z)

    # compute the between and within transformations
    between(z)
    Within(z)

    # Between replicates the values for each time observation
    Between(z)

    # between, Between, and Within transformations on other dimension
    between(z, effect = "time")
    Between(z, effect = "time")
    Within(z, effect = "time")

    # NA treatment for between, Between, and Within
    z2 <- z
    z2[length(z2)] <- NA # set last value to NA
    between(z2, na.rm = TRUE) # non-NA value for last individual
    Between(z2, na.rm = TRUE) # only the NA observation is lost
    Within(z2, na.rm = TRUE)  # only the NA observation is lost

    sum(is.na(Between(z2))) # 9 observations lost due to one NA value
    sum(is.na(Between(z2, na.rm = TRUE))) # only the NA observation is lost
    sum(is.na(Within(z2))) # 9 observations lost due to one NA value
    sum(is.na(Within(z2, na.rm = TRUE))) # only the NA observation is lost

[Package plm version 1.6-6 Index]