phfit.group: PH fitting with grouped data

View source: R/phfit.R

phfit.groupR Documentation

PH fitting with grouped data

Description

Estimates PH parameters from grouped data.

Usage

phfit.group(ph, counts, breaks, intervals, instants, ...)

Arguments

ph

An object of R6 class. The estimation algorithm is selected depending on this class.

counts

A vector of the number of points in intervals.

breaks

A vector for a sequence of points of boundaries of intervals. This is equivalent to c(0,cumsum(intervals)). If this is missing, it is assigned to 0:length(counts).

intervals

A vector of time lengths for intervals. This is equivalent to diff(breaks)). If this is missing, it is assigned to rep(1,length(counts)).

instants

A vector of integers to indicate whether sample is drawn at the last of interval. If instant is 1, a sample is drawn at the last of interval. If instant is 0, no sample is drawn at the last of interval. By using instant, point data can be expressed by grouped data. If instant is missing, it is given by rep(0L,length(counts)), i.e., there are no samples at the last of interval.

...

Further options for EM steps.

Value

Returns a list with components, which is an object of S3 class phfit.result;

model

an object for estimated PH class.

llf

a value of the maximum log-likelihood.

df

a value of degrees of freedom of the model.

aic

a value of Akaike information criterion.

iter

the number of iterations.

convergence

a logical value for the convergence of estimation algorithm.

ctime

computation time (user time).

data

an object for data class

aerror

a value of absolute error for llf at the last step of algorithm.

rerror

a value of relative error for llf at the last step of algorithm.

options

a list of options used in the fitting.

call

the matched call.

Note

In this method, we can handle truncated data using NA and Inf; phfit.group(ph=cf1(5), counts=c(countsdata, NA), breaks=c(breakdata, +Inf)) NA means missing of count data at the corresponding interval, and Inf is allowed to put the last of breaks or intervals which represents a special interval [the last break point,infinity).

Examples

## make sample
wsample <- rweibull(n=100, shape=2, scale=1)
wgroup <- hist(x=wsample, breaks="fd", plot=FALSE)

## PH fitting for general PH
(result1 <- phfit.group(ph=ph(2), counts=wgroup$counts, breaks=wgroup$breaks))

## PH fitting for CF1
(result2 <- phfit.group(ph=cf1(2), counts=wgroup$counts, breaks=wgroup$breaks))

## PH fitting for hyper Erlang
(result3 <- phfit.group(ph=herlang(3), counts=wgroup$counts, breaks=wgroup$breaks))

## mean
ph.mean(result1$model)
ph.mean(result2$model)
ph.mean(result3$model)

## variance
ph.var(result1$model)
ph.var(result2$model)
ph.var(result3$model)

## up to 5 moments 
ph.moment(5, result1$model)
ph.moment(5, result2$model)
ph.moment(5, result3$model)


mapfit documentation built on Nov. 22, 2022, 5:05 p.m.