[R-br] SOMA DE LINHAS

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[R-br] SOMA DE LINHAS

R-br mailing list
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
[hidden email]
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.
Reply | Threaded
Open this post in threaded view
|

Re: [R-br] SOMA DE LINHAS

R-br mailing list
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 <[hidden email]> 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
[hidden email]
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
[hidden email]
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.
Reply | Threaded
Open this post in threaded view
|

Re: [R-br] SOMA DE LINHAS

R-br mailing list
In reply to this post by R-br mailing list
Olá Edson,
Veja se o exemplo abaixo resolve.


library(dplyr)
base <- data.frame(id = c(1,2,3),
           c1 = c("concordancia", "concordancia", "discordancia"),
           c2 = c("discordancia", "concordancia", "concordancia"),
           c3 = c("discordancia", "concordancia", "discordancia"))
base %>% 
  mutate(qtd = rowSums(base=="concordancia"),
         perc = qtd/3)


Abraços


Em qua, 26 de set de 2018 às 11:52, Edson Lira via R-br <[hidden email]> 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
[hidden email]
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.


--


Rodrigo Oliveira

_______________________________________________
R-br mailing list
[hidden email]
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.
Reply | Threaded
Open this post in threaded view
|

Re: [R-br] SOMA DE LINHAS

R-br mailing list
In reply to this post by R-br mailing list
Fernando Souza, abaixo o link de um banco para vc avaliar. 


[  ]'s
Prof. Edson Lira, Me
Estatístico
Manaus-Amazonas


Em quarta-feira, 26 de setembro de 2018 16:54:42 AMT, Fernando Souza <[hidden email]> 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 <[hidden email]> 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
[hidden email]
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
[hidden email]
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.
Reply | Threaded
Open this post in threaded view
|

Re: [R-br] SOMA DE LINHAS

R-br mailing list
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("[hidden email]", "[hidden email]",
), 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 <[hidden email]> wrote:

Fernando Souza, abaixo o link de um banco para vc avaliar. 


[  ]'s
Prof. Edson Lira, Me
Estatístico
Manaus-Amazonas


Em quarta-feira, 26 de setembro de 2018 16:54:42 AMT, Fernando Souza <[hidden email]> 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 <[hidden email]> 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
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
[hidden email]
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.