Oi pessoal,Estou com uma dificuldade de efetivar um 'if' dentro do 'else'.É 
possível fazer isso né? Estou trabalhando com uma técnica de agrupamento 
baseado na "transferência de entropia mútua" que é a matriz do exemplo.Grifei o 
problema em amarelo.Se puderem me ajudar.Agradecido,Arthur.


#Exemplo:
col1=c(1,0.45,0.25,0.18,0.14,0.22,0.26,0.41)col2=c(0.54,1,0.50,0.15,0.15,0.3,0.27,0.28)col3=c(0.2,0.52,1,0.21,0.17,0.5,0.22,0.26)col4=c(0.13,0.17,0.28,1,0.4,0.22,0.5,0.16)col5=c(0.12,0.15,0.15,0.42,1,0.19,0.31,0.14)col6=c(0.2,0.32,0.49,0.25,0.21,1,0.23,0.2)col7=c(0.21,0.25,0.19,0.48,0.29,0.19,1,0.21)col8=c(0.47,0.32,0.29,0.22,0.15,0.23,0.2,1)
dados=cbind(col1,col2,col3,col4,col5,col6,col7,col8) # matrix DIT (direcional 
information transfer)
#Prática
Dit=dadosthreshold=0.35grupos=list(0,0,0,0,0,0,0,0) # 8 pois é o máximo número 
de grupos
#lógica 1for (i in 1:ncol(dados))       {               for (j in 
i:ncol(dados))                {               if ((Dit[i,j]>=threshold && 
Dit[j,i]>=threshold) && Dit[i,j]!=1)   #condição para agrupar --> i e j > 
thresold                                          for (k in 1:i)                
                                          #verificar se i ou j estão em algum 
grupo anterior                              {                       if 
(sum(grupos[[k]])==i | sum(grupos[[k]])==j) 
{grupos[[k]]=cbind(grupos[[k]],i,j)}                                            
 else {(if (grupos[[k]]==0)  {grupos[[k]]=c(i,j)})}                             
                 ##Problema: fazer if dentro do else                     }      
                 }       }                                         
_______________________________________________
R-br mailing list
[email protected]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código 
mínimo reproduzível.

Responder a