basic1 데이터 중 'f4'를 기준으로 basic3 데이터 'f4'값을 기준으로 병합하고, 병합한 데이터에서 r2결측치를 제거한다음, 앞에서 부터 20개 데이터를 선택하고 'f2'컬럼 합을 구하시오 library(dplyr) df1=read.csv('../input/bigdatacertificationkr/basic1.csv') df2=read.csv('../input/bigdatacertificationkr/basic3.csv') ans%inner_join(df2,by='f4') %>%filter(r2!='') %>%slice(1:20) %>%summarise(sum=sum(f2)) print(ans) #정답 : 15 암기 inner_join(DF,DF1,by='컬럼명')
주어진 데이터에서 2022년 월별 Sales 합계 중 가장 큰 금액과 2023년 월별 Sales 합계 중 가장 큰 금액의 차이를 절대값으로 구하시오. 단 Events컬럼이 '1'인경우 80%의 Sales값만 반영함 (소수점 반올림 후 정수 출력) library(dplyr) library(lubridate) df%group_by(year,month) %>%summarise(sum=sum(pre_sale)) max_2022%filter(year==2022) %>%summarise(max=max(sum)) %>%select(max) max_2023%filter(year==2023) %>%summarise(max=max(sum)) %>%select(max) ans
주어진 데이터에서 2022년 5월 주말과 평일의 sales컬럼 평균값 차이를 구하시오 (소수점 둘째자리까지 출력, 반올림) library(dplyr) library(lubridate) df%filter(year==2022&month==5) weekend%filter(wday==1|wday==7) weekday%filter(!(wday==1|wday==7)) ans
2022년 5월 Sales의 중앙값을 구하시오 library(dplyr) library(lubridate) df%mutate(year=year(Date),month=month(Date)) %>%filter(year==2022&month==5) %>%summarise(med=median(Sales,na.rm=T)) #정답 : 1477685 암기 library(lubridate) 날짜 lubridate year() year(2022-01-01) return값:2022 날짜 lubridate month() month(2022-01-01) return값:1
주어진 데이터 셋에서 f2가 0값인 데이터를 age를 기준으로 오름차순 정렬하고 앞에서 부터 20개의 데이터를 추출한 후 f1 결측치(최소값)를 채우기 전과 후의 분산 차이를 계산하시오 (소수점 둘째 자리까지) library(dplyr) df=read.csv('../input/bigdatacertificationkr/basic1.csv') df%>%filter(f2==0) %>%arrange(age) %>%slice(1:20) %>%mutate(pre_f1=coalesce(f1,min(f1,na.rm=T))) %>%summarise(diff=var(f1,na.rm=T)-var(pre_f1)) %>%round(2) #정답 : 38.44 암기 var(컬럼,na.rm=T) #분산, 결측치 제거
주어진 데이터 셋에서 age컬럼 상위 20개의 데이터를 구한 다음 f1의 결측치를 중앙값으로 채운다. 그리고 f4가 ISFJ와 f5가 20 이상인 f1의 평균값을 출력하시오! library(dplyr) df=read.csv('../input/bigdatacertificationkr/basic1.csv') df %>% arrange(-age) %>% slice(1:20) %>% mutate(pre_f1=ifelse(is.na(f1),median(f1,na.rm=T),f1)) %>% filter(f4=='ISFJ' & f5>=20) %>% summarise(value=mean(pre_f1)) #정답 : 73.875 암기 slice(data, from, to) #데이터 프레임의 행(row) 선별 by posi..
city와 f4를 기준으로 f5의 평균값을 구한 다음, f5를 기준으로 상위 7개 값을 모두 더해 출력하시오 (소수점 둘째자리까지 출력) library(dplyr) df=read.csv("../input/bigdatacertificationkr/basic1.csv") ans%group_by(city,f4) %>%summarise(mean_f5 = mean(f5,na.rm=T)) %>%arrange(-mean_f5) %>%head(7) %>%ungroup() %>%summarise(sum=sum(mean_f5)) %>%round(2) print(ans) 정답 : 644