Programa R para Biologia da Conservação
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Contagem (como na tabela dinâmica do excel)

2 participantes

Ir para baixo

Contagem (como na tabela dinâmica do excel) Empty Contagem (como na tabela dinâmica do excel)

Mensagem por Lausanne Ter Abr 21, 2020 4:04 pm

Pessoal/Prof Marcos, boa tarde:

Ao fazer a Atividade Proposta - Módulo 1, surgiu a dúvida: há uma forma de obter contagem de variáveis como se obtém na tabela dinâmica do excel?
No final da atividade surgiram as seguintes perguntas:

# Qual o número de ambientes primarios em áreas maiores que 100?
# Qual o número de ambientes primarios em áreas entre 60 e 100?
# Qual o número de ambientes primarios em áreas abaixo de 60?

Sei que é possível listar e realizar a contagem manualmente, mas o R pode fazer isso automaticamente por meio de alguma função?   Very Happy

Desde já agradeço,

Lausanne    Smile

Lausanne

Mensagens : 2
Data de inscrição : 08/04/2020

Ir para o topo Ir para baixo

Contagem (como na tabela dinâmica do excel) Empty Re: Contagem (como na tabela dinâmica do excel)

Mensagem por Prof. Marcos Qua Abr 22, 2020 9:58 am

Oi, Lausanne!

O segredo aqui é combinar o uso dos [] com a função which(). Vou ilustrar com um exemplo dos dados mencionados, ok? Estando com eles carregados, é só acompanhar:

Código:


#A função which identifica linhas que atendem um critério, por exemplo:
which(dados$Riqueza>35)
#Mostra os números das linhas que atendem o critério acima (ter mais que 35 espécies)

#Se você quer ver os dados completos que atendem aqueles critérios, basta usar os números das linhas combinando com []
#Por exemplo, aqui:

dados[which(dados$Riqueza>35), ]
#Aqui, o which() foi usado para indicar quais linhas queremos ver

###
#Para as perguntas que você fez, seria assim:

# Qual o número de ambientes primarios em áreas maiores que 100?
#Aqui vamos ter que fazer em etapas, quebrando os dados em pedaços...
#Vamos lá:
primarios<-dados[dados$Ambiente=="primario",]
primarios
primarios[which(primarios$Area>100),]

#Se quiser contar, é simples também:
nrow(primarios[which(primarios$Area>100),])

#Agora tente para as outras, e depois diga se deu certo, ok?
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

Contagem (como na tabela dinâmica do excel) Empty Re: Contagem (como na tabela dinâmica do excel)

Mensagem por Lausanne Dom Abr 26, 2020 4:46 pm

Muito obrigada Prof Marcos! Após inúmeros erros bobos, consegui o resultados esperado.

Segue o script caso alguém tenha interesse. Lembrando que o meu arquivo, ao invés de "dados" foi denominado "pratica1"

# Qual o número de ambientes primarios em áreas maiores que 100?
# Qual o número de ambientes primarios em áreas entre 60 e 100?
# Qual o número de ambientes primarios em áreas abaixo de 60

primario<-pratica1[pratica1$Ambiente=="primario", ] #chamo os dados do ambiente primário

primario[which(primario$Area>100), ] #depois peço para mostrar as linhas com o critério estabelecido

nrow(primario[which(primario$Area>100), ])#nrow()função para contar

primario[which(primario$Area<60), ]

nrow(primario[which(primario$Area<60), ])#nrow()função para contar

primario[which(primario$Area<=60 & primario$Area<100 ), ]

nrow(primario[which(primario$Area<=60 & primario$Area<100), ])#nrow()função para contar

Lausanne

Mensagens : 2
Data de inscrição : 08/04/2020

Ir para o topo Ir para baixo

Contagem (como na tabela dinâmica do excel) Empty Re: Contagem (como na tabela dinâmica do excel)

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos