setwd("C:/Users/USER/Desktop/Pós-Graduação - Data Science/Módulo II/Testes") # Definir Directório / Ambiente de Trabalho
library(readr) # Carregar a Biblioteca
library(readxl) # Carregar a Biblioteca
library(rmarkdown)Considere o conjunto de dados constante do ficheiro Sleep. Acesse o ficheiro clicando AQUI.
Importe os dados para o R e transforme numa data.frame se necessário. No R altere o nome da base de dados lida para DADOS.
Base0 = read_csv("Sleep.csv") # Base de Dados
paged_table(Base0) # Visualizar a Base de Dados ImportadoIndique o que significa DADOS[10, ].
Este comando/função possibilita a Visualização do elemeneto na 10ª linha da matriz DADOS. Assim, a função retorna informações do 10º indivíduo.
Identifique os diferentes níveis da variável ‘BMI_Category’.
## chr [1:374] "Overweight" "Normal" "Normal" "Obese" "Obese" "Obese" "Obese" ...
# Como a variável é uma String temos de o transformar em data.frame
BMICat = as.factor(DADOS$`BMI Category`) # Transformá-lo em factor
levels(BMICat) # Exibir as categorias em níveis.## [1] "Normal" "Normal Weight" "Obese" "Overweight"
Obtenha uma tabela com as frequências absolutas y as frequências relativas acumuladas da variável Stress_Level.
Selecione um resultado de cada frequência que lhe pareça interessante comentar e interprete-os.
Tabela = table(DADOS$`Stress Level`)
Dist.Freq = cbind(Freq=Tabela,
Freq.rel.acum=cumsum(prop.table(Tabela)))
Dist.Freq # Tabela de Distribuição de Frequencias## Freq Freq.rel.acum
## 3 71 0.1898396
## 4 70 0.3770053
## 5 67 0.5561497
## 6 46 0.6791444
## 7 50 0.8128342
## 8 70 1.0000000
# Criar linha Total com as mesmas colunas
TotalLinha = data.frame(
Freq = sum(Tabela),
Freq.rel.acum = sum(prop.table(Tabela))
)
rownames(TotalLinha) <- "Total" # Adicionar o nome da linha
TotalLinha[c(2)]= ""
Dist.compl <- rbind(Dist.Freq, TotalLinha) # Juntar/Adicionar a linha
Dist.compl## Freq Freq.rel.acum
## 3 71 0.189839572192513
## 4 70 0.377005347593583
## 5 67 0.556149732620321
## 6 46 0.679144385026738
## 7 50 0.812834224598931
## 8 70 1
## Total 374
Comentário: Constata-se que menos de
20% dos indivíduos apresentam nível de stresse 3. Observa-se igualmente
que o nível de stresse 6 corresponde ao grupo com menor número de
indivíduos..
Contabilize o número de professores (Occupation=Teacher) do sexo masculino (Gender=Male).
# usando a Função Soma, uma vez que se trata de va qualitativa.
sum(DADOS$Occupation == "Teacher" # Somar dentro va coluna os Professores
& DADOS$Gender == "Male") # Selecionar apenas do sexo Masculino## [1] 5
Calule a média, a mediana e a moda da distribuição da variável Age.
Poderá afirmar que esta distribuição tem uma assimetria positiva? Justifique a sua resposta.
## [1] 42.18449
## [1] 43
Moda = subset(table(DADOS$Age), # Constrói uma tabela
table(DADOS$Age) == max(table(DADOS$Age))) # Calcula a maior frequencia
Moda # Retorna o Objecto com a Maior frequancia (Objecto - Frequência)## 43
## 34
Não. Não podemos afirmar que a distribuição é assimétrica positiva, visto que a Média é menor do que a Moda, considerando o primeiro coeficiente de assimetria de pearson.
Considere uma nova base de dados de DADOS contendo apenas as variáveis numéricas: Age, Sleep_Duration, Heart_Rate, Daily_Steps.
## 'data.frame': 374 obs. of 13 variables:
## $ Person ID : num 1 2 3 4 5 6 7 8 9 10 ...
## $ Gender : chr "Male" "Male" "Male" "Male" ...
## $ Age : num 27 28 28 28 28 28 29 29 29 29 ...
## $ Occupation : chr "Software Engineer" "Doctor" "Doctor" "Sales Representative" ...
## $ Sleep Duration : num 6.1 6.2 6.2 5.9 5.9 5.9 6.3 7.8 7.8 7.8 ...
## $ Quality of Sleep : num 6 6 6 4 4 4 6 7 7 7 ...
## $ Physical Activity Level: num 42 60 60 30 30 30 40 75 75 75 ...
## $ Stress Level : num 6 8 8 8 8 8 7 6 6 6 ...
## $ BMI Category : chr "Overweight" "Normal" "Normal" "Obese" ...
## $ Blood Pressure : chr "126/83" "125/80" "125/80" "140/90" ...
## $ Heart Rate : num 77 75 75 85 85 85 82 70 70 70 ...
## $ Daily Steps : num 4200 10000 10000 3000 3000 3000 3500 8000 8000 8000 ...
## $ Sleep Disorder : chr "None" "None" "None" "Sleep Apnea" ...
Altere, na nova base de dados, o nome das variáveis numéricas para: Idade, Duracao, Pulsacao, Passos.
Exporte a base de dados criada com as 4 variáveis numéricas para um ficheiro de texto com o nome Dormir.txt, usando o símbolo ; como separator de colunas.