Eu precisava obter frequências absolutas para vários pares de variáveis no meu conjunto de dados, então usei esse código para "fazer loop" xtabs
comando:
apply(table[,2:17], 2, function(x) xtabs(~tablel$variable+x))
Funcionou bem e me deu as freqüências absolutas pela variável. No entanto, agora preciso obter freqüências relativas a partir delas pela linha e não consigo descobrir como.
Posso de alguma forma incluir o cálculo da frequência relativa no loop já? Ou eu tenho que criar um novo conjunto de dados para isso (e como? Eu não consigo tirar as freqüências absolutas de R).
Aqui está um exemplo de uma das frequências da variável que obtive com o código.
$SEM
x
MN sem1 sem2 sem3
N1 227 130 18
N10 0 2 7
N11 9 7 5
N12 29 21 1
N2 23 14 2
N3 19 7 4
N4 12 17 0
N5 18 36 3
N6 22 13 7
N8 1 39 0
N9 0 2 5
Respostas:
1 para resposta № 1Podemos aplicar uma função através da lista. Assumindo que a lista com seus 16 quadros de dados é chamada lst
então,
lapply(lst, function(i) t(apply(i[,-1], 1, function(j) j/sum(j))))