data <- readxl::read_excel ("data_kesehatan.xlsx")
head(data)
## # A tibble: 6 × 10
## id umur jenis_kelamin tinggi_badan berat_badan gula_darah tekanan_sistolik
## <dbl> <dbl> <chr> <dbl> <dbl> <dbl> <dbl>
## 1 1 33 Perempuan 160. 62.9 80.1 129.
## 2 2 59 Perempuan 153. 54.7 79.2 109.
## 3 3 39 Perempuan 156. 66.8 99.6 133.
## 4 4 64 Laki-laki 174. 54.8 97.4 109.
## 5 5 67 Perempuan 164. 62.2 49.0 129.
## 6 6 20 Perempuan 150. 61.2 121. 136.
## # ℹ 3 more variables: tekanan_diastolik <dbl>, kolesterol <dbl>,
## # skor_kesehatan <dbl>
sehat <- subset(data,
gula_darah < 110 &
kolesterol < 200 &
tekanan_sistolik < 130 &
tekanan_diastolik < 85)
jumlah_sehat <- nrow(sehat)
print(jumlah_sehat)
## [1] 48
data$Kategori_umur<- cut(data$umur,
breaks = c(-Inf, 30, 50, Inf),
labels = c("<30", "30-50", ">50"))
table(data$Kategori_umur)
##
## <30 30-50 >50
## 42 85 73
aggregate(skor_kesehatan ~ Kategori_umur, data = data, mean)
## Kategori_umur skor_kesehatan
## 1 <30 90.56762
## 2 30-50 89.21351
## 3 >50 89.53153
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
data %>%
arrange(gula_darah) %>%
slice(1)
## # A tibble: 1 × 11
## id umur jenis_kelamin tinggi_badan berat_badan gula_darah tekanan_sistolik
## <dbl> <dbl> <chr> <dbl> <dbl> <dbl> <dbl>
## 1 5 67 Perempuan 164. 62.2 49.0 129.
## # ℹ 4 more variables: tekanan_diastolik <dbl>, kolesterol <dbl>,
## # skor_kesehatan <dbl>, Kategori_umur <fct>
data %>%
mutate(BMI = berat_badan / (tinggi_badan / 100)^2) %>%
filter(BMI > 30) %>%
summarise(rata_skor = mean(skor_kesehatan, na.rm = TRUE))
## # A tibble: 1 × 1
## rata_skor
## <dbl>
## 1 74.9