r스튜디오 문제 도와주세요.. ㅜㅜ제발

r스튜디오 문제 도와주세요.. ㅜㅜ제발

작성일 2023.05.23댓글 1건
    게시물 수정 , 삭제는 로그인 필요

1.

R에서 제공하는 state.x77 데이터 세트를 이용하여 다음 코드들을 작성하시오.

st <- data.frame(state.x77)

1) st의 각 열에 대해 특이값이 존재하는지 상자그림을 작성하여 확인하시오.
2) 특이값이 존재하는 경우 이를 NA로 대체하고 이를 제거하시오.
3) 2)번 결과를 population(인구수)를 기준으로 내림차순 정렬하시오.
4) illiteracy(문맹률)이 낮은 상위 5개 주의 이름과 문맹률을 출력하시오.

2.

1) R에서 제공하는 mtcars 데이터 세트를 이용하여 다음 코드들을 작성하시오.
2) gear(기어)의 개수에 따라 split() 함수를 사용하여 그룹을 나누어 mt.gear에 저장하시오.
3) mt.gear 에서 gear(기어)의 개수가 3인 그룹과 5인 그룹의 데이터를 합쳐서 mtgear35 변수에 저장하고 내용을 출력하시오.
4) mtcars 데이터 세트에서 wt(중량)dl 1.5 ~ 3.0 사이인 행들을 추출하여 출력하시오.



profile_image 익명 작성일 -

# 1. R에서 제공하는 state.x77 데이터 세트를 이용하여 다음 코드들을 작성하시오. st <- data.frame(state.x77) ## 1) st의 각 열에 대해 특이값이 존재하는지 상자그림을 작성하여 확인하시오. ## 개별 플롯으로 그려서 확인하기 boxplot(st$Population) # 이처럼 데이터 내의 모든 변수에 대해 박스플롯을 실시하면 됨. boxplot(st$Income) ## 데이터셋의 형태를 변형하여 한 번에 살펴보기 (ggplot) 이용 library(tidyverse) st |> tidyr::gather(vars, values) |> # wide-form dataset > long-form ggplot(aes(values)) + geom_boxplot() + # draw boxplot coord_flip() + # flip x- and y-axis facet_wrap(~vars, scales = "free", ncol = 4) # split by different variables (columns) ## 2) 특이값이 존재하는 경우 이를 NA로 대체하고 이를 제거하시오. ## boxplot은 관측치가 하위/상위 25%로부터 하위 25%와 상위 25% 사이의 구간 IQR의 ## 약 1.5배에 해당하는 값보다 크거나 작으면 극단적인 값으로 간주 ## 플롯 상으로는 Area, Income, Population에 극단적인 값들이 보임 ## Area의 극단치(하한/상한)를 결측처리 quantile_area <- quantile(st$Area, probs = c(0.25, 0.75)) st$Area <- ifelse(st$Area < quantile_area[1] - 1.5*IQR(st$Area) | st$Area > quantile_area[2] + 1.5*IQR(st$Area), NA, st$Area) ## income의 극단치(하한/상한)를 결측처리 quantile_income <- quantile(st$Income, probs = c(0.25, 0.75)) st$Income <- ifelse(st$Income < quantile_income[1] - 1.5*IQR(st$Income) | st$Income > quantile_income[2] + 1.5*IQR(st$Income), NA, st$Income) ## Population의 극단치(하한/상한)를 결측처리 quantile_pop <- quantile(st$Population, probs = c(0.25, 0.75)) st$Population <- ifelse(st$Population < quantile_pop[1] - 1.5*IQR(st$Population) | st$Population > quantile_pop[2] + 1.5*IQR(st$Population), NA, st$Population) ## NA로 대체된 결과를 제외한 데이터셋 저장 st <- st[complete.cases(st), ] # NA 가 존재하지 않는 행만 남기고 다시 저장 ## tidyverse로 동일한 결과 st <- st |> rownames_to_column() |> tidyr::gather(vars, values, -rowname) |> group_by(vars) |> mutate(lower = quantile(values, probs = 0.25), upper = quantile(values, probs = 0.75), values = case_when( values < lower - 1.5*IQR(values) | values > upper + 1.5*IQR(values) ~ NA, T ~ values )) |> mutate(row = row_number()) |> dplyr::select(vars, values, row, rowname) |> ungroup() |> tidyr::pivot_wider(names_from = vars, # 현재 데이터에서 함수를 적용했을 때 칼럼명으로 갈 칼럼 values_from = values, # 현재 데이터에서 함수를 적용했을 때 값으로 들어갈 칼럼 values_fill = NA, # 결측값이 있을 때 대체할 값 values_fn = NULL) |> dplyr::select(-row) |> drop_na() ## 3) 2)번 결과를 population(인구수)를 기준으로 내림차순 정렬하시오. st[order(st$Population, decreasing=T), ] st |> arrange(desc(Population)) ## 4) illiteracy(문맹률)이 낮은 상위 5개 주의 이름과 문맹률을 출력하시오. st[order(st$Illiteracy, decreasing=F), ] |> top_n(5) st |> arrange(Illiteracy) |> top_n(5) # Nevada (0.5), Montana (0.6), Colorado (0.7), Arizona (1.8). New Mexico (2.2) # 2. ## 1) R에서 제공하는 mtcars 데이터 세트를 이용하여 다음 코드들을 작성하시오. ## 2) gear(기어)의 개수에 따라 split() 함수를 사용하여 그룹을 나누어 mt.gear에 저장하시오. mt.gear <- split(mtcars, mtcars$gear) ## 3) mt.gear 에서 gear(기어)의 개수가 3인 그룹과 5인 그룹의 데이터를 합쳐서 mtgear35 변수에 저장하고 내용을 출력하시오. ## data frame으로 저장 mtgear35 <- cbind(mt.gear[[1]], mt.gear[[3]]) ## list 형식으로 저장 mtgear35_list <- list(mt.gear$`3`, mt.gear$`5`) ## 4) mtcars 데이터 세트에서 wt(중량)dl 1.5 ~ 3.0 사이인 행들을 추출하여 출력하시오. mtcars[which(mtcars$wt >= 1.5 & mtcars$wt <= 3.0), ] ## OR mtcars |> dplyr::filter(wt >= 1.5 & wt <= 3.0)

R 공부하다가 궁금하신 거 있으면 카페에 가입해서 질문 남겨주세요.

R 스튜디오 문제풀이

R스튜디오 문제 풀이 좀 도와주세요 ㅜㅜ 문제2] 아래와 같은 구조의 데이터프레임 dfx 을 생성하시오. name age sex height weight score 1 Ann...

스튜디오 빨간 줄 제발 도와주세요ㅜㅜ

... 제바ㄹ 도와주게요 왜 저랄까요 쟤... 진짜 .. ㅜㅜ 코드상 딱히 문제가 없었다면 그래들 빌드하면서... (안드로이드 스튜디오 IDE내 캐시정보 초기화) 순으로...

r 스튜디오 원소의 합 질문 ㅜㅜ

문제가 seq함수를 이용하여 1부터 1000까지 홀수인 원소를 순서대로 x에 저장한... 제발 도와주세요ㅜㅜ x<-seq(1,1000,2) ## x에 홀수 저장 num<-seq(1,length(x),2)...

갤럭시탭 클립스튜디오 도와주세요.

... 그런데 문제가 생겼습니다. 저는 클립스튜디오를... 여기서 의문을 도와주세요. 1. 다음 사진에 가운데에... 제발 저에게 도움을 주세요.ㅜㅜ 1, 3 아래 FAQ에 해답이...

r언어 제발 도와주세요 ㅜㅜ

다음 문제를 해결하기 위한 R 코드를 작성하시오. ( which( ) 함수 사용 ) (4 points) (1) iris 데이터셋에서 꽃잎의 길이(Petal.Length)가 가장 큰 관측값(행)의...