# (subscript) logical subscript too long in using apply

3 messages
Open this post in threaded view
|

## (subscript) logical subscript too long in using apply

 Dear ALL I have this function in R: func_LN <- function(data){ med_ge <- matrix(c(rep(NA,nrow(data)*ncol(data))), nrow = nrow(data), ncol=ncol(data), byrow=TRUE) T <- matrix(c(rep(NA,length(n)*ncol(data))), nrow = length(n), ncol=ncol(data), byrow=TRUE) Tdiff<- matrix(c(rep(NA,length(n)*ncol(data))), nrow = length(n), ncol=ncol(data), byrow=TRUE) T1<- c(rep(NA,ncol(data))) T0<- c(rep(NA,ncol(data))) cov_rank<-matrix(c(rep(NA,ncol(data)*ncol(data))), nrow = ncol(data), ncol = ncol(data) , byrow=TRUE) med <- c(rep(NA,ncol(data))) mean_ge <- c(rep(NA,ncol(data))) n<-c(NA,2)   if (ncol(data)>1){     for(m_j in 1:ncol(data)){       med[m_j]<-median(data[,m_j])}     for(m_j in 1:ncol(data))       for(m_i in 1:nrow(data))       {         if(data[m_i,m_j]>med[m_j])           med_ge[m_i,m_j]=0         else           med_ge[m_i,m_j]=1       }     y=c(1,1,1,1,1,1,0,0,0,0)     n<-c(sum(y == 1),sum(y==0))     touse3 <- y==1     T1<- apply(med_ge[touse3,], 2, mean)     T0<- apply(med_ge[!touse3,], 2, mean)     T=rbind(T1,T0)     Tbar=colMeans(T)     Tdiff=T-Tbar     cov_rank=cov(med_ge)     inv_cov_rank=ginv(cov_rank)     LN=0     for(m_i in 1:length(n)) {       LN <-  LN+((Tdiff[m_i,]%*%inv_cov_rank)%*%t(Tdiff)[,m_i])*n[m_i]     }     return(LN)   }} func_LN(data) Now, I want to try this function on subgroups of data. So I used "apply"  result <- apply(gs , 1 , function(z) func_LN(data[which(z==1),])) but I saw this error: Error in apply(med_ge[touse3, ], 2, mean) :   (subscript) logical subscript too long I will appreciate if you help me. PS:the elements of gs are 1 0r 0. dim(data)=24*2665 dim(gs)=107*2665 Soheila         [[alternative HTML version deleted]] ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide http://www.R-project.org/posting-guide.htmland provide commented, minimal, self-contained, reproducible code.