[R-br] Obtendo efeitos INDIVIDUAIS de múltiplas variáveis qualitativas.

Rafael Costa rafael_costa em caen.ufc.br
Segunda Maio 4 12:09:18 BRT 2015


Prezados colegas,

Possuo dados de um questionário e quero estimar o efeito individual de cada
variável explicativa (todas são qualitativas) sobre a variável dependente
(contínua). Contudo o padrão é considerar os coeficientes estimados como a
diferença entre o o grupo de referência (valor estimado do intercepto) e o
grupo do coeficiente. Cada variável qualitativa diz respeito a uma
característica de uma determinada atividade e a variável contínua é o tempo
tomado para executar tal atividade. Destaco que o nível de referência de
cada fator diz respeito ao caso em que nenhuma das opções para aquele fator
foi marcado. Os dados estão em "http://www.datafilehost.com/d/c7f0d342".
Não os coloquei no CMR, pois ainda não consegui (peço minhas sinceras
desculpas), mas espero que isto não seja empecilho.Também não coloquei
apenas uma amostra dos dados, pois estava havendo problemas de matriz
singular.

1º (e principal) Problema - Para obter o efeito individual dos níveis de
cada fator, considerei que o grupo de referência possui efeito zero e fiz
os seguintes passos:

#Como o arquivo não está sendo carregado no CMR, supõe-se aqui que ele foi
baixado da internet e já se encontra carregado no R.
#Utilizarei uma regressão quantílica, por isso segue o pacote abaixo.
install.packages(quantreg)
library(quantreg)
#Transformando as variáveis categóricas em objetos únicos
p_1 = table(1:length(tabela1.1$p1),as.ordered(tabela1.1$p1))
p_21 = table(1:length(tabela1.1$p21),as.factor(tabela1.1$p21))
p_22 = table(1:length(tabela1.1$p22),as.factor(tabela1.1$p22))
p_23 = table(1:length(tabela1.1$p23),as.factor(tabela1.1$p23))
p_24 = table(1:length(tabela1.1$p24),as.factor(tabela1.1$p24))
p_25 = table(1:length(tabela1.1$p25),as.factor(tabela1.1$p25))
p_34 = table(1:length(tabela1.1$p34),as.ordered(tabela1.1$p34))
p_5 = table(1:length(tabela1.1$p5),as.ordered(tabela1.1$p5))
p_6 = table(1:length(tabela1.1$p6),as.ordered(tabela1.1$p6))
p_7 = table(1:length(tabela1.1$p7),as.ordered(tabela1.1$p7))
p_8 = table(1:length(tabela1.1$p8),as.ordered(tabela1.1$p8))
p_9 = table(1:length(tabela1.1$p9),as.ordered(tabela1.1$p9))
#Regressão do modelo sem intercepto, mas também considerando que o grupo de
referência tem valor 0, haja vista que o grupo de referência significa que
nenhum dos fatores foi marcado (se nenhum item foi marcado, considero que o
tempo tomado para executar a atividade é praticamente zero).
qrModel=rq(data=tabela1.1, pontoefetivo ~ 0 + p_1[,-1] + p_21[,-1] +
p_22[,-1] + p_23[,-1] + p_24[,-1] + p_25[,-1] + p_34[,-1] + p_5[,-1] +
p_6[,-1] + p_7[,-1] + p_8[,-1] + p_9[,-1], tau=0.5)
summary(qrModel)

A minha ideia foi que, dado que o grupo de referência é zero, o coeficiente
estimado é justamente o efeito individual do nível escolhido da variável. A
minha ideia está certa? Se não, o que faço para obter esses efeitos
individuais?

2º Problema: Supondo que fiz tudo certinho acima, os fatores ordenados não
possuem efeitos crescentes [Ver summary(qrModel)]. Mas não deveriam
possuir? Se deveriam, o que faço para garantir tal efeito?

3º Problema: Mas uma vez supondo que tudo está correto, esperava que todos
os efeitos sobre o tempo de execução das atividades fossem não negativos.
Ou estou errado a respeito disso? Se estou certo, o que faço para garantir
que todos os valores sejam não negativos.

Desde já agradeço a todos e aguardo qualquer ajuda.
<http://www.datafilehost.com/get.php?file=c7f0d342>--



*Rafael Carneiro da CostaDoutorando em EconomiaCentro de Pós-Graduação em
Economia - CAENUniversidade Federal do Ceará - UFC*
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150504/f60a0b6f/attachment.html>


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