rm(list=ls()) ClaimsData<-read.table("ClaimsYear1-4DIHandLCandSexandAge.csv",sep=",",header=TRUE) # Order PCG by the largest average DIHY2 to smallest average DIHY2 pcgMat<-matrix(rep(0,16*45),ncol=16) for (i in 1:45){ pcgMat[i,seq(1,16)]<-colSums(ClaimsData[ClaimsData[,35+i]==1,seq(116,131)]) } MY2<-((pcgMat%*%seq(1,16))/rowSums(pcgMat))-1 rm(pcgMat) # Order PCG by the largest average DIHY3 to smallest average DIHY3 pcgMat<-matrix(rep(0,16*45),ncol=16) for (i in 1:45){ pcgMat[i,seq(1,16)]<-colSums(ClaimsData[ClaimsData[,35+i]==1,seq(132,147)]) } MY3<-((pcgMat%*%seq(1,16))/rowSums(pcgMat))-1 rm(pcgMat) M<-(MY2+MY3)/2 # orderedMY2<-cbind(order(MY2),M[order(MY2)]) # orderedMY3<-cbind(order(MY3),M[order(MY3)]) rm(MY2) rm(MY3) rm(i) orderedM<-cbind(order(M),M[order(M)]) Claims<-read.table("Claims.csv",sep=",",header=TRUE) Claims$PrimaryConditionGroup<-factor(Claims$PrimaryConditionGroup) levels(Claims$PrimaryConditionGroup)<-seq(1,46) Claims$PrimaryConditionGroup<-as.numeric(Claims$PrimaryConditionGroup) Claims$PrimaryConditionGroup<-(Claims$PrimaryConditionGroup-1) Claims$PrimaryConditionGroup[Claims$PrimaryConditionGroup==0]<-NA Claims<-na.omit(Claims) Claims$DIHPred<-rep(0,dim(Claims)[1]) for (i in 1:45){ Claims[Claims[,11]==i,15]<-M[i] } Claims<-Claims[order(Claims$MemberID),]