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
Sent: Friday, May 18, 2012 2:30 PM
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
R-br@listas.c3sl.ufpr.br
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.