[R-br] Usar peso para tabela cruzada

Jakson Alves de Aquino jalvesaq em gmail.com
Quarta Agosto 10 17:39:42 BRT 2011


2011/8/10 Clayton Santos Delfino <csd em arandanet.com.br>:
> Estou usando a função CrossTable do pacote "descr" para gerar uma
> tabulação sobre dois fatores: marcas x regiao, tudo certo.
>
> O problema é que eu preciso que os percentuais sejam dados sobre o
> número de questionários enviados e não sobre o número de marcas
> apontadas.
>
> Explico: na minha pesquisa, havia a opção do respondente incluir
> mais de uma marca na resposta para um item. Neste caso, eu tenho que
> considerar um "voto", por assim dizer, para cada marca que ele
> indicou mas preciso considerar apenas um questionário quando fizer a
> tabela cruzada, ou seja, O universo tem que ser o número de
> questionarios e não o número de votos.
>
> Se algum puder me indicar alguma função ou algum caminho para isso
> eu agradeço.
>
> Segue um fragmento dos dados para ajudar.

Supondo que o data.frame se chama "b", veja se o código abaixo faz o
que você quer:

peso <- 1 / table(b$que)
peso <- data.frame(que = as.numeric(names(peso)), peso = as.numeric(peso))
b2 <- merge(b, peso)

library(descr)
crosstab(b2$marca, b2$regiao, b2$peso)

-- 
Jakson


Mais detalhes sobre a lista de discussão R-br