Edson,
Segue uma possível solução. Deixo a conferência dos resultados com você.
Tive que fazer algumas correções na tabela devido a forma como os dados estão
armazenados. Evite utilizar pontuação nas palavras (ex: Discordância, prefira
Discordancia ) e acredito que o nome das colunas podem ser melhor escolhido
para facilitar o entendimento.
Segue um dput da planilha editada que utilizei.
dados <-structure(list(id = 1:30, entrevistado = structure(c(NA, NA,
22L, 20L, 18L, 7L, 10L, 21L, 28L, 6L, 19L, 3L, 9L, 15L, 26L,
13L, 4L, 5L, 16L, 1L, 24L, 27L, 17L, 25L, 11L, 8L, 2L, 12L, 23L,
14L), .Label = c("[email protected]", "[email protected]",
"[email protected]", "[email protected]", "[email protected]",
"[email protected]", "[email protected]",
"[email protected]", "[email protected]",
"[email protected]", "[email protected]", "[email protected]",
"[email protected]", "[email protected]",
"[email protected]",
"[email protected]", "[email protected]", "[email protected]",
"[email protected] ", "[email protected]",
"[email protected]", "[email protected]",
"[email protected]", "[email protected]",
"[email protected]", "[email protected]",
"[email protected]", "[email protected]"
), class = "factor"), v_ist_presr = structure(c(1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Indiferente"), class = "factor"), v_ist_gov_fed = structure(c(1L,
1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Discordancia"), class = "factor"), v_ist_gov_est = structure(c(1L,
1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Discordancia"), class = "factor"), v_ist_gov_mun = structure(c(1L,
1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 2L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), v_prev_temvida =
structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Indiferente"), class = "factor"), v_soc_con_ac = structure(c(1L,
2L, 2L, 2L, 2L, 2L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L,
2L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 1L, 2L, 2L, 2L), .Label = c("Concordancia",
"Discordancia"), class = "factor"), v_ores_div_mcom = structure(c(1L,
2L, 1L, 1L, 2L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 2L, 1L, 1L, 1L, 2L,
2L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 2L, 1L, 2L, 2L), .Label = c("Concordancia",
"Discordancia"), class = "factor"), v_mveic_diss = structure(c(2L,
1L, 1L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 3L, 1L, 1L, 1L, 1L, 1L, 1L,
2L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 1L, 1L, 2L, 2L), .Label = c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), o_ap_auto_impc =
structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Indiferente"), class = "factor"), o_ap_continuadas = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Indiferente"), class = "factor"), o_ind_fund_meiocom = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Indiferente"), class = "factor"), c_com_prtrab = structure(c(2L,
1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 2L, 3L, 1L, 1L, 2L, 1L, 3L, 1L,
1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 1L), .Label = c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), c_con_atr_site =
structure(c(3L,
1L, 1L, 1L, 2L, 2L, 1L, 1L, 3L, 2L, 3L, 1L, 1L, 1L, 1L, 3L, 1L,
1L, 2L, 1L, 3L, 1L, 3L, 1L, 1L, 1L, 2L, 2L, 1L, 2L), .Label = c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), c_be_inf_ist =
structure(c(3L,
1L, 1L, 1L, 3L, 1L, 3L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 3L,
1L, 1L, 1L, 3L, 1L, 1L, 3L, 1L, 2L, 1L, 1L, 1L, 1L), .Label = c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), c_mat_edicao =
structure(c(3L,
1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 3L, 1L, 1L, 1L, 1L, 2L), .Label = c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), c_camp_div_meiocomun =
structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "Concordancia",
class = "factor"),
c_gt_imp_enfr = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "Concordancia", class = "factor"),
c_acomp_div = structure(c(2L, 1L, 1L, 1L, 1L, 1L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 3L, 1L, 3L,
1L, 1L, 1L, 1L, 1L, 2L, 2L), .Label = c("Concordancia", "Discordancia",
"Indiferente"), class = "factor"), c_inf_rep_gov_fed = structure(c(3L,
1L, 1L, 1L, 2L, 1L, 2L, 1L, 1L, 1L, 3L, 1L, 2L, 1L, 1L, 2L,
1L, 1L, 2L, 1L, 2L, 1L, 1L, 1L, 3L, 1L, 2L, 1L, 1L, 1L), .Label =
c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), c_inf_rep_gov_est =
structure(c(3L,
3L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 3L, 1L, 2L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 3L, 1L, 2L, 1L, 2L, 1L), .Label =
c("Concordancia",
"Discordancia", "Indiferente"), class = "factor"), c_inf_rep_gov_mun =
structure(c(3L,
2L, 1L, 2L, 1L, 1L, 2L, 1L, 1L, 1L, 3L, 1L, 2L, 1L, 1L, 2L,
1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 3L, 1L, 1L, 1L, 2L, 2L), .Label =
c("Concordancia",
"Discordancia", "Indiferente"), class = "factor")), class = "data.frame",
row.names = c(NA,
-30L))
head(dados)
#install.packages(tidyr)
library(tidyr)
#Organiza a tabela em formato longo
corrigido <- dados%>%
gather('v_ist_presr','v_ist_gov_fed','v_ist_gov_est','v_ist_gov_mun','v_prev_temvida','v_soc_con_ac','v_ores_div_mcom','v_mveic_diss','o_ap_auto_impc','o_ap_continuadas','o_ind_fund_meiocom','c_com_prtrab','c_con_atr_site','c_be_inf_ist','c_mat_edicao','c_camp_div_meiocomun','c_gt_imp_enfr','c_acomp_div','c_inf_rep_gov_fed','c_inf_rep_gov_est','c_inf_rep_gov_mun',key=
"Perguntas",value="Respostas")
#Transforma o tipo dos dados para fator
corrigido
<-transform(corrigido,entrevistado=factor(entrevistado),Perguntas=factor(Perguntas),Respostas=factor(Respostas))
#install.packages("dplyr")
library(dplyr)
#Tabela final agrupada por Perguntas e Resposta
tabela_final <- as.data.frame(corrigido%>%group_by(Perguntas,Respostas)%>%
summarize(n=n()))
tabela_final
On Sep 27 2018, at 11:37 am, Edson Lira <[email protected]> wrote:
>
> Fernando Souza, abaixo o link de um banco para vc avaliar.
>
> https://www.datafilehost.com/d/e570a703
>
> [ ]'s
> Prof. Edson Lira, Me
> Estatístico
> Manaus-Amazonas
>
>
>
>
> Em quarta-feira, 26 de setembro de 2018 16:54:42 AMT, Fernando Souza
> <[email protected]> escreveu:
>
>
> Mande um CMR porque montar uma tabela baseada em sua descrição ou criar
> soluções de cabeça é isso. Bom mínimo de um dput dos dados ou parte
> representativa deles, copie e cole aqui
> Em qua, 26 de set de 2018 12:52, Edson Lira via R-br
> <[email protected] (mailto:[email protected])> escreveu:
> > Bom dia a todos! Tenho um banco aonde da coluna 19 a coluna 29 tenho
> > respostas do tipo: Concordância, Indiferente e Discordância, com um banco
> > de 29 linhas.
> >
> > O meu objetivo é somar por linha (por cada indivíduo, a quantidade e o
> > percentual de Concordância), ou seja acrescentar mais duas colunas por
> > indivíduo.
> >
> > Abaixo as respostas de um indivíduo (uma linha).
> >
> >
> > Concordância Concordância Concordância Concordância Concordância
> > Concordância Concordância Discordância Concordância Concordância
> > Concordância Discordância Indiferente
> > Indiferente Indiferente Concordância Concordância Discordância Indiferente
> > Indiferente Indiferente
> >
> >
> >
> >
> >
> > [ ]'s
> > Prof. Edson Lira, Me
> > Estatístico
> > Manaus-Amazonas
> >
> >
> >
> >
> > _______________________________________________
> > R-br mailing list
> > [email protected] (mailto:[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.