pdim function

Check for the Dimensions of the Panel

Check for the Dimensions of the Panel

This function checks the number of individuals and time observations in the panel and whether it is balanced or not.

pdim(x, ...) ## Default S3 method: pdim(x, y, ...) ## S3 method for class 'data.frame' pdim(x, index = NULL, ...) ## S3 method for class 'pdata.frame' pdim(x, ...) ## S3 method for class 'pseries' pdim(x, ...) ## S3 method for class 'pggls' pdim(x, ...) ## S3 method for class 'pcce' pdim(x, ...) ## S3 method for class 'pmg' pdim(x, ...) ## S3 method for class 'pgmm' pdim(x, ...) ## S3 method for class 'panelmodel' pdim(x, ...) ## S3 method for class 'pdim' print(x, ...)

Arguments

  • x: a data.frame, a pdata.frame, a pseries, a panelmodel, or a pgmm object,
  • ...: further arguments.
  • y: a vector,
  • index: see pdata.frame(),

Returns

An object of class pdim containing the following elements:

  • nT: a list containing n, the number of individuals, T, the number of time observations, N the total number of observations,

  • Tint: a list containing two vectors (of type integer): Ti

    gives the number of observations for each individual and nt gives the number of individuals observed for each period,

  • balanced: a logical value: TRUE for a balanced panel, FALSE for an unbalanced panel,

  • panel.names: a list of character vectors: id.names contains the names of each individual and time.names contains the names of each period.

Details

pdim is called by the estimation functions and can be also used stand-alone.

Note

Calling pdim on an estimated panelmodel object and on the corresponding (p)data.frame used for this estimation does not necessarily yield the same result. When called on an estimated panelmodel, the number of observations (individual, time) actually used for model estimation are taken into account. When called on a (p)data.frame, the rows in the (p)data.frame are considered, disregarding any NA values in the dependent or independent variable(s) which would be dropped during model estimation.

Examples

# There are 595 individuals data("Wages", package = "plm") pdim(Wages, 595) # Gasoline contains two variables which are individual and time # indexes and are the first two variables data("Gasoline", package="plm") pdim(Gasoline) # Hedonic is an unbalanced panel, townid is the individual index data("Hedonic", package = "plm") pdim(Hedonic, "townid") # An example of the panelmodel method data("Produc", package = "plm") z <- plm(log(gsp)~log(pcap)+log(pc)+log(emp)+unemp,data=Produc, model="random", subset = gsp > 5000) pdim(z)

See Also

is.pbalanced() to just determine balancedness of data (slightly faster than pdim),

punbalancedness() for measures of unbalancedness,

nobs(), pdata.frame(),

pvar() to check for each variable if it varies cross-sectionally and over time.

Author(s)

Yves Croissant