Learn R Programming

DIRMR (version 0.5.0)

EM: EM

Description

The EM method is an iterative algorithm used for maximum likelihood estimation or maximum posterior probability estimation of parameters in probabilistic models with hidden variables. It is essentially a method for estimating parameters, based on existing sample data, to estimate parameter values that are consistent with the model.

Usage

EM(data,df1,maxiter)

Value

Y01

The response variable value after projection

Yhat

The estimated response variable value after projection

Arguments

data

The real data sets with missing data used in the method

df1

The real data sets used in the method

maxiter

The maximum number of iterations

Author

Guangbao Guo,Yu Li

Examples

Run this code
set.seed(99)
library(MASS)
library(mvtnorm)
n=50;p=6;q=5;M=2;omega=0.15;ratio=0.1;maxiter=15;nob=round(n-(n*ratio))
dd.start=1;sigma2_e.start=1
X0=matrix(runif(n*p,0,2),ncol=p)
beta=matrix(rnorm(p*1,0,3),nrow=p)
Z0=matrix(runif(n*q,2,3),ncol=q)
e=matrix(rnorm(n*1,0,sigma2_e.start),n,1)
b=matrix(rnorm(q*1,0,1),q,1)
Y0=X0
df1=data.frame(Y=Y0,X=X0,Z=Z0)
misra=function(data,ratio){
  nob=round(n-(n*ratio))
  data[sample(n,n-nob),1]=NA
  return(data)}
data=misra(data=df1,ratio=0.1)
EM(data,df1,maxiter=15)

Run the code above in your browser using DataLab