링크 : https://cafe.naver.com/yjbooks/24367
data url = https://raw.githubusercontent.com/Datamanim/datarepo/main/body/body.csv
main.ds <- read.csv( 'https://raw.githubusercontent.com/Datamanim/datarepo/main/body/body.csv',
encoding = "UTF-8"
)
library(dplyr)
head(main.ds)
> head(main.ds)
측정나이 측정회원성별 신장...cm 체중...kg 체지방율....
1 59 M 175.0 70.6 19.2
2 40 F 161.4 45.8 21.7
3 27 M 176.6 84.8 19.2
4 38 M 167.6 76.7 24.7
5 21 M 165.2 66.2 21.5
6 22 F 164.6 54.1 27.6
이완기혈압.최저....mmHg 수축기혈압.최고....mmHg 악력D...kg
1 91 150 40.6
2 62 119 22.1
3 87 153 45.9
4 63 132 43.6
5 83 106 33.5
6 65 110 28.9
앉아윗몸앞으로굽히기...cm 교차윗몸일으키기...회 제자리.멀리뛰기...cm 등급
1 12.2 30 179 C
2 16.0 32 165 B
3 13.2 61 216 B
4 16.0 45 231 A
5 10.6 46 198 C
6 18.8 50 158 B
ds1 <- main.ds
str(ds1)
ds1$평균 <- NA
ds1$평균 <- ds1$수축기혈압.최고....mmHg - ds1$이완기혈압.최저....mmHg
result1 <- mean(ds1$평균)
print(result1)
> print(result1)
[1] 52.19539
ds2 <- main.ds
library(dplyr)
ds2.temp <- ds2 %>% filter(측정나이 >= 50 & 측정나이 < 60) %>% summarise(mean = mean(신장...cm))
print(ds2.temp)
> print(ds2.temp)
mean
1 164.0749
ds3 <- main.ds
min(ds3$측정나이)
max(ds3$측정나이)
ds3$측정나이[ds3$측정나이 >= 20 & ds3$측정나이 <= 29] <- 20
ds3$측정나이[ds3$측정나이 >= 30 & ds3$측정나이 <= 39] <- 30
ds3$측정나이[ds3$측정나이 >= 40 & ds3$측정나이 <= 49] <- 40
ds3$측정나이[ds3$측정나이 >= 50 & ds3$측정나이 <= 59] <- 50
ds3$측정나이[ds3$측정나이 >= 60 & ds3$측정나이 <= 69] <- 60
ds3$측정나이 <- as.factor(ds3$측정나이)
ds3.temp <- cbind(ds3, count = 1)
result3 <- aggregate(
data = ds3.temp,
count ~ 측정나이,
FUN = sum
)
names(result3) <- c("연령대", "인원수")
print(result3)
> print(result3)
연령대 인원수
1 20 5831
2 30 2660
3 40 1801
4 50 1769
5 60 1335
ds4 <- main.ds
ds4$측정나이[ds4$측정나이 >= 20 & ds4$측정나이 <= 29] <- 20
ds4$측정나이[ds4$측정나이 >= 30 & ds4$측정나이 <= 39] <- 30
ds4$측정나이[ds4$측정나이 >= 40 & ds4$측정나이 <= 49] <- 40
ds4$측정나이[ds4$측정나이 >= 50 & ds4$측정나이 <= 59] <- 50
ds4$측정나이[ds4$측정나이 >= 60 & ds4$측정나이 <= 69] <- 60
ds4$측정나이[ds4$측정나이 >= 70 & ds4$측정나이 <= 79] <- 70
ds4$측정나이 <- as.factor(ds4$측정나이)
ds4.temp <- cbind(ds4, count = 1)
head(ds4.temp)
result4 <- aggregate(
data = ds4.temp,
count~ 측정나이 + 등급,
FUN = sum
)
result4 <- result4[order(result4$측정나이), ]
rownames(result4) <- NULL
print(result4)
> print(result4)
측정나이 등급 count
1 20 A 1585
2 20 B 1443
3 20 C 1455
4 20 D 1348
5 30 A 743
6 30 B 697
7 30 C 626
8 30 D 594
9 40 A 386
10 40 B 428
11 40 C 455
12 40 D 532
13 50 A 321
14 50 B 410
15 50 C 474
16 50 D 564
17 60 A 314
18 60 B 371
19 60 C 339
20 60 D 311
ds5 <- main.ds
str(ds5)
ds5.temp <- ds5 %>% filter(측정회원성별 == "M" & (등급 == 'A' | 등급 == 'D'))
A.체지방율 <- ds5.temp %>% filter(등급 == 'A') %>% summarise(Amean = mean(체지방율....))
D.체지방율 <- ds5.temp %>% filter(등급 == 'D') %>% summarise(Dmean = mean(체지방율....))
result5 <- abs(A.체지방율 - D.체지방율)
print(result5)
> print(result5)
Amean
1 7.932086
ds6 <- main.ds
ds6.temp <- ds6 %>% filter(측정회원성별 == "F" & (등급 == 'A' | 등급 == 'D'))
A.체지방율 <- ds6.temp %>% filter(등급 == 'A') %>% summarise(Amean = mean(체중...kg))
D.체지방율 <- ds6.temp %>% filter(등급 == 'D') %>% summarise(Dmean = mean(체중...kg))
result6 <- abs(A.체지방율 - D.체지방율)
print(result6)
> print(result6)
Amean
1 5.176212
ds7 <- main.ds
ds7$bmi <- NA
ds7$bmi <- ( ds7$체중...kg / (ds7$신장...cm/100)^2 )
ds7 <- ds7 %>% filter(측정회원성별 == 'M')
result7 <- mean(ds7$bmi)
print(result7)
> print(result7)
[1] 24.46134
ds8 <- main.ds
ds8$bmi <- NA
ds8$bmi <- ( ds8$체중...kg / (ds8$신장...cm/100)^2 )
result8 <- ds8 %>% filter(bmi < 체지방율....) %>% summarise(mean = mean(체중...kg))
print(result8)
> print(result8)
mean
1 61.74088
ds9 <- main.ds
ds9.m <- ds9 %>% filter( 측정회원성별 == 'M' ) %>% summarise(man.mean = mean(악력D...kg))
ds9.f <- ds9 %>% filter( 측정회원성별 == 'F' ) %>% summarise(woman.mean = mean(악력D...kg))
result9 <- abs(ds9.m - ds9.f)
print(result9)
> print(result9)
man.mean
1 17.55954
ds10 <- main.ds
ds10.m <- ds10 %>% filter( 측정회원성별 == 'M' ) %>% summarise(man.mean = mean(교차윗몸일으키기...회))
ds10.w <- ds10 %>% filter( 측정회원성별 == 'F' ) %>% summarise(woman.mean = mean(교차윗몸일으키기...회))
result10 <- abs(ds10.m - ds10.w)
print(result10)
> print(result10)
man.mean
1 14.24316