csv_exam.csv
    0.00MB
    excel_exam_sheet.xlsx
    0.01MB
    finalexam.xlsx
    0.01MB
    output_newdata.csv
    0.00MB

    # 패키지 설치
    install.packages("dplyr")
    install.packages("ggplot2")
    
    #패키지 로드
    library(dplyr)
    library(ggplot2)
    
    #데이터 검토
    head(mpg)
    
    
    #데이터 분석 
    #1.회사별 평균 연비 높은 순 정렬
    mpg %>% group_by(manufacturer) %>% 
            summarise(mean.hwy=mean(hwy)) %>% 
            arrange(desc(mean.hwy))
    
    # 2.포드 연비 높은 순 정렬
    mpg %>%
      filter(manufacturer=="ford") %>% 
      group_by(model) %>% 
      arrange(desc(hwy))
    
    # 3.배기량과 연비 관계 그래프
    qplot(data = mpg, x = displ, y= hwy)
    
    mean(mpg$hwy)
    max(mpg$hwy)
    min(mpg$hwy)
    hist(mpg$hwy)
    
    e2 <- c("Hellow","world","is","good")
    # 문자처리함수
    paste(e2, collapse = " ") #빈칸 구분자로 문자 붙이기
    paste(e2, collapse = ",")
    
    # 함수 파라미터 지정하기
    # 'x =' : x축
    qplot(data = mpg, x = hwy)
    qplot(data = mpg, x = cty)
    
    # 'geom =' : 그래프 형식
    qplot(data = mpg, y = hwy, x = drv, geom = "point")
    qplot(data = mpg, y = hwy, x = drv, geom = "boxplot")
    
    # 'color =' : 색깔구분
    qplot(data = mpg, y = hwy, x = drv, geom = "boxplot", color = drv)
    
    # 함수 사용법이 궁금할땐 help
    ?qplot
    
    # 엑셀 데이터 불러오기
    # readxl 패키지 설치 
    install.packages("readxl")
    # redxl 패키지 로드
    library(readxl)
    # 엑셀 파일 불러오기
    df_finalexam <- read_excel("finalexam.xlsx", sheet =1, col_names = T)
    df_finalexam
    View(df_finalexam)
    
    mean(df_finalexam$math)
    mean(df_finalexam$history)
    mean(df_finalexam$english)
    
    
    # 첫번째 행 변수명으로 로드 x
    df_finalexam <- read_excel("finalexam.xlsx", sheet =1, col_names = F)
    df_finalexam
    
    # CSV (Comma Separated Values)
    # - 범용 데이터 형식
    # - 값 사이클 쉼표(,)로 구분
    # - 용량 작음, 다양한 소프트웨어에서 사용
    
    read.csv("csv_exam.csv", header = T)
    
    # csv로 저장하기
    write.csv(df_finalexam, file = "output_newdata.csv")
    
    df_exam_sheet <- read_excel("excel_exam_sheet.xlsx", sheet = 3)
    df_exam_sheet
    
    # 2. 데이터 수정하기
    # dplyr 패키지 설치 & 로드
    install.packages("dplyr")
    library(dplyr)
    
    # 데이터 프레임 생성
    df_raw <- data.frame(var1 = c(1,2,3),
                          var2 = c(2,3,2))
    df_raw
    # 1)데이터 프레임 복사본 만들기
    df_new <- df_raw #복사본 생성
    df_new
    # 2)변수명 바꾸기
    # '새변수명 = 기존변수명' 순서로 입력함
    df_new <- rename(df_new, variable2 = var2)
    df_new
    df_raw
    
    # Q1.
    mpg <- as.data.frame(ggplot2::mpg)
    mpg_new <- mpg
    mpg_new
    
    # Q2.
    library(dplyr)
    mpg_new <- rename(mpg_new,city = cty)
    mpg_new <- rename(mpg_new,highway = hwy)
    
    # Q3.
    head(mpg_new)
    
    # 변수 조합해 파생변수 만들기
    # 데이터 프레임 생성성
    df <- data.frame(var1 = c(4,3,8),
                     var2 = c(2,6,1))
    df
    # var_sum 파생변수 생성
    df$var_sum <- df$var1 + df$var2
    df$var_sum
    
    # var_mean 파생변수 생성 (더해서 2로 나눔)
    df$var_mean <- df$var_sum/2
    df
    
    # mpg 통합 연비 변수 만들기
    mpg$total <- (mpg$cty + mpg$hwy)/2
    head(mpg)
    # 조건문을 활용해 파생변수 만들기
    # 1.기준값 정하기
    summary(mpg$total)
    hist(mpg$total)
    
    # 2.조건문으로 합격 판정 변수 만들기
    mpg$test <- ifelse(mpg$total>=20,"pass","fall")
    head(mpg,20)
    
    # 3.빈도표로 합격판정 자동차수 살펴보기
    table(mpg$test)
    
    # 4.막대 그래프로 빈도 표시하기
    library(ggplot2)
    qplot(mpg$test)
    
    # 5. total을 기준으로 A, B, C 등급부여
    mpg$grade <- ifelse(mpg$total >= 30,"A", 
                        ifelse(mpg$total >= 20, "B", "c"))
    head(mpg,20)
    
    table(mpg$grade)
    qplot(mpg$grade)
    
    mpg$grade <- ifelse(mpg$total >= 30,"A", 
                        ifelse(mpg$total >= 25, "B",
                               ifelse(mpg$total >=20, "C"
                                      ,"D")))
    table(mpg$grade)
    qplot(mpg$grade)
    
    # 5장 문제 분석 도전! 123p
    
    
    
    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기
    loading