Vitor,

A forma mais simples que posso oferecer, sem conhecer a sua estrutura de dados, 
é essa:

soma = as.vector(rep(0,dim(x)[1]))

for(i in 1:dim(x)[1]){
              for(j in c(seq(1,dim(x)[2]-1,2))){

                                                soma = soma + 
ifelse(is.na(x[i,j]) | is.na(x[i,(j+1)]), 0, ifelse(x[i,j]==x[i,(j+1)], 1, 0))
                                                }
             }

Onde “x” é a matriz de dados originais

S







From: Vitor Aguiar 
Sent: Friday, May 18, 2012 2:30 PM
To: [email protected] 
Subject: [R-br] aplicando cálculo sobre linhas de um dataframe

Olá. Postei essa pergunta ontem mas não obtive resposta. Desculpe por estar 
postando novamente. 

Tenho um dataframe com milhares de linhas com valores NAs e não-NAs. Suponhamos 
a seguinte linha:

1. NA NA NA NA NA NA 6 6 NA NA 8 11 NA NA 17 18 NA NA 10 10 11 13 8 9 11 11 11 
11

Vamos considerar os dados em pares. Assim, meu primeiro par é NA NA, o quarto 
par é 6 6. Há alguma forma de eu contar quantos pares iguais eu tenho em cada 
linha do dataframe? Assim, nessa linha por exemplo eu teria o resultado 4, pois 
tenho 4 pares de valores iguais (6 6, 10 10, 11 11, 11 11).
Então preciso aplicar o cálculo para todas as linhas.

O caminho seria um loop onde eu contaria dados[i, 1] == dados[i, 2]?


Obrigado,
Vitor


--------------------------------------------------------------------------------
_______________________________________________
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.
_______________________________________________
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