Boa tarde Chiara Desculpe por sugerir transpor a matriz. Eu interpretei de forma equivocada a sa questão.
O tipo de organização que você está querendo fazer não vai acontecer. O algoritmo de clusterização que está usando é não supervisionado e ele irá agrupar cada pessoa que respondeu o questionário de acordo com a distância entre eles. No caso da cidade o exemplo agrupou por cidades pois havia uma linha para cada cidade com vários atributos. Você têm uma linha com vários atributos para cada pessoa. As pessoas pertencem ao mesmo grupo. O que você pode fazer é aplicar um algoritmo supervisionado, já que você sabe de qual grupo a pessoa pertence. Ou, como são dois grupos, verificar se a clusterização separa as pessoas nos dois grupos de forma eficaz. Por exemplo: df <- read.csv('~/Downloads/Questionários cluster.xlsx - Agrupamento.csv') head(df) dim(df) table(df$X) head(df[,-c(1,2)]) # Ward Hierarchical Clustering d <- vegan::vegdist(df[,-c(1,2)],distance="jaccard")# distance matrix fit <- hclust(d, method="ward.D2") groups <- cutree(fit, k=2) # draw dendogram with red borders around the 5 clusters plot(fit) # display dendogram plot.new() rect.hclust(fit, k=2, border="red") table(df$X, groups) groups 1 2 COM_LOCAL 90 10 PESCADOR_ESPORTIVO 63 37 Em porcentagens: round(prop.table(table(df$X, groups),2)*100,1) groups 1 2 COM_LOCAL 58.8 21.3 PESCADOR_ESPORTIVO 41.2 78.7 Veja que o algoritmo, de uma forma não muito eficaz, é capaz de separar os grupos baseado na resposta. Agora, qual seria o seu teste de hipótese aqui? Se você aplicar um um teste para verificar que a distribuição dos casos na tabela é uniforme ou não: chisq.test(df$X, groups) Pearson's Chi-squared test with Yates' continuity correction data: df$X and groups X-squared = 18.801, df = 1, p-value = 1.451e-05 Vai notar que você deveria rejeitar a H0. Mas depende muito do que você está investigando e qual é a sua hipótese. Outra questão é verificar se o método de cálculo de distância é aplicável para as suas variável e se o Ward.D é o melhor método de agrupamento. Aparentemente as suas variáveis são categóricas. Espero ter ajudado. Daniel ---------------------------------------------------------------- Daniel Tiezzi, MD, PhD Oncologia / Mastologia Professor Associado - Livre Docente Departamento de Ginecologia e Obstetrícia Setor de Mastologia e Oncologia Ginecológica Faculdade de Medicina de Ribeirão Preto - USP Tel.: 16 3602-2488 https://github.com/dtiezzi http://danieltiezzi.pro.br e-mail: dtie...@usp.br > On 20 Jan 2023, at 10:49, Chiara Lubich <lubichchi...@gmail.com> wrote: > > Oi, Daniel, obrigada pelo retorno > > Eu fiz a transposição, no entanto a organização fica em função dos objetos > (importância, recurso, etc). Ver imagem aqui-->acesse.one/dqXgX > Eu queria que ficasse em função de quem respondeu, ou seja, os atores que > estou avaliando (pescador e comunidade). Pois quero ver se esses atores têm a > mesma opinião sobre o ambiente, visto que um é visitante e outro é residente > do local. > > Como você pode ver na tabela tenho 200 linhas de respostas (Pescador -> N=100 > e Comunidade -> N=100). Minha tabela é essa -->encr.pw/Gs0ZK > <http://encr.pw/Gs0ZK> > > Mas queria algo assim, mas ao invés de organizar por cidade (Barcelos, > Ausentes etc) como na imagem, quero organizar por ator (pescador e > comunidade) -->l1nk.dev/xHbST <http://l1nk.dev/xHbST> > > Espero ter explicado melhor! > > Muito obrigada e aguardo o retorno > > Em ter., 17 de jan. de 2023 às 14:45, Daniel Guimarães Tiezzi <dtie...@usp.br > <mailto:dtie...@usp.br>> escreveu: > Fazer a transposição da matrix > > daniel > > > > On Tue, Jan 17, 2023, 3:33 PM Chiara Lubich por (R-br) > <r-br@listas.c3sl.ufpr.br <mailto:r-br@listas.c3sl.ufpr.br>> wrote: > Boa tarde, pessoal > > Estou com dificuldade para entender como fazer para juntar os dados e formar > grupos na análise e mostrar graficamente isso. > > Estou usando o seguinte banco de dados: encr.pw/Gs0ZK <http://encr.pw/Gs0ZK> > > Estou usando o seguinte comando: > dac<-read.table("clipboard",sep="\t", header=T, dec=".", row.names=1) > dac > attach(dac) > # Ward Hierarchical Clustering > d<-vegdist(dac[,-1],distance="jaccard")# distance matrix > fit <- hclust(d, method="ward.D2") > plot(fit) # display dendogram > groups <- cutree(fit, k=5) # cut tree into 5 clusters > # draw dendogram with red borders around the 5 clusters > rect.hclust(fit, k=5, border="red") > > que gera esse gráfico: > <image.png> > No entanto, queria que formasse de acordo como nome dos grupos, semelhante a > esse gráfico, mas em função dos meus dois atores avaliados (pescador e > comunidade). > <image.png> > Só que no meu caso, ao invés de ser as cidades, são os grupos de pessoas. > > Aos que puderem ajudar eu agradeço > > Muito obrigada > > Abraços, > > _______________________________________________ > R-br mailing list > R-br@listas.c3sl.ufpr.br <mailto:R-br@listas.c3sl.ufpr.br> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > <https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br> > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia > <http://www.leg.ufpr.br/r-br-guia>) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br 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.