1 저장위치 파악

getwd() #현재 워킹 디렉토리 확인
## [1] "C:/RRR/movie"
setwd("C:/RRR/movie") #향후 워킹 디렉토리 설정

2 Raw Data 불러오기

1. spss 데이터를 csv 파일로 변환한 뒤 저장하기

library(haven)
moviedata <- read_sav("C:/RRR/movie/moviedata.sav") #sav 파일 읽어오기
write.table(moviedata, file = "C:/RRR/movie/moviedata.csv" #읽어온 sav파일을 csv파일로 새롭게 저장하되
            , sep = "," #새 데이터의 열 구분은 "," (csv파일이니깐)
            , row.names = FALSE)

2. csv파일을 R로 불러오기

moviedata <- read.csv("C:/RRR/movie/moviedata.csv"
                      , header = T #첫 행 변수명으로  
                      , sep = "," #csv에서 자료 구분은 ","
                      , stringsAsFactors = F
                      , na.strings = "") #문자열을 factor로 읽지 않기
View(moviedata) #자료 제대로 들어왔나 보기

3. 불러온 다음에는 되도록 새로운 객체로 저장하기

MD1 <- data.frame(moviedata)
class(MD1)
## [1] "data.frame"

3 Data 변환하기

library(purrr)
MD1 <- MD1 %>% map_if(is.factor, as.numeric) 
#factor 변수들을 numeric 변수들로
MD1 <- MD1 %>% map_if(is.integer, as.numeric) 
#integer 변수들을 numeric 변수들로
MD1 <- MD1 %>% map_if(is.character, as.numeric) 
#character 변수들을 numeric 변수들로
str(MD1) 
#잘 바뀌었나 확인

4 사용할 변수 추리기

1. 사용할 변수 이름 바꾸기

library(reshape)
MD1 <- rename(MD1, c("개인번호" = "pid"
                         , "DQ1.성별" = "r_gender"
                         , "DQ2.출생년도" = "r_birthyear"
                         , "연령" = "r_age"
                         , "혼인재구성1" = "r_marital"
                         , "DQ4.최종학력" = "r_educ"
                         , "직군재구성1" = "r_job"
                         , "경력년수1" = "r_career"
                         , "DQ9.직급1" = "r_jobclass"
                         , "DQ10.조합가입" = "r_union"
                         , "고용상태" = "r_employ"
                         , "X.39.현장및직장여성비율" = "r_womanratio"
                         , "X.413.하루평균근무시간" = "r_workinghour"
                         , "X.414.작품을통해번소득" = "r_income1")) 
                    #"이전 이름" = "새 이름"

rename을 하면 data.frame이 list로 변환됨. 따라서 다시 data.frame으로 바꿔야함

MD1 <- data.frame(MD1)
class(MD1)
## [1] "data.frame"
View(MD1)

5 변수 Recoding 및 label 넣기

  1. 젠더 label 넣기
MD1$r_gender <- c(0, 1, NA)[match(MD1$r_gender, c(1, 2, NA))] 
#기존 변수 gender에서 1, 2, NA에 맞춰서 새 변수에 0, 1, NA를 넣어라
MD1$r_gender <- factor(MD1$r_gender, level=c(0, 1), label=c("남성", "여성"))
summary(MD1$r_gender)
## 남성 여성 NA's 
##  372  460    3
  1. 직급 label 넣기
MD1$r_jobclass <- factor(MD1$r_jobclass, level=c(1:8), label=c("조직임원", "감독급/기사", "실장,팀장,1st"
                                                                             , "2nd", "3rd이하", "수습, 인턴"
                                                                             , "사원", "기타"))
summary(MD1$r_jobclass)
##      조직임원   감독급/기사 실장,팀장,1st           2nd       3rd이하 
##            63           195           197            96           123 
##    수습, 인턴          사원          기타          NA's 
##            21            80            56             4
  1. 노조 label 넣기
MD1$r_union <- c(1, 0, NA)[match(MD1$r_union, c(1, 2, NA))] 
MD1$r_union <- factor(MD1$r_union, level=c(0, 1), label=c("노조없음", "노조있음"))
summary(MD1$r_union)
## 노조없음 노조있음     NA's 
##      697      136        2
  1. 혼인 label 넣기
MD1$r_marital <- factor(MD1$r_marital, level=c(1:4), label=c("미/비혼", "기혼", "이혼/별거", "기타"))
summary(MD1$r_marital)
##   미/비혼      기혼 이혼/별거      기타      NA's 
##       662       158        14         0         1
  1. 교육수준 label 넣기
MD1$r_educ <- factor(MD1$r_educ, level=c(1:5), label=c("중졸이하", "고졸", "2-3년제 대졸", "4년제 대졸", "석사 이상"))
summary(MD1$r_educ)
##     중졸이하         고졸 2-3년제 대졸   4년제 대졸    석사 이상         NA's 
##            2          131          134          449          116            3
  1. 고용상태 label 넣기
MD1$r_employ <- factor(MD1$r_employ, level=c(1:5), label=c("독자제작", "사용자", "피고용자정규직", "피고용자비정규직", "기타"))
summary(MD1$r_employ)
##         독자제작           사용자   피고용자정규직 피고용자비정규직 
##              256               21               84              426 
##             기타             NA's 
##                6               42

6 Raw Data에서 뒤늦게 변수를 추가하기

*우선 앞에서 cleaning한 주요 변수로 이루어진 새로운 데이터를 만들자

MD2 <- subset(MD1, select = c(r_age, r_birthyear, r_jobclass, r_union
                              ,r_womanratio, r_workinghour, r_income1
                              ,r_marital, r_educ, r_job, r_career, r_employ
                              , r_gender))
str(MD2)
## 'data.frame':    835 obs. of  13 variables:
##  $ r_age        : num  32 41 44 40 38 25 49 42 33 41 ...
##  $ r_birthyear  : num  1988 1979 1976 1980 1982 ...
##  $ r_jobclass   : Factor w/ 8 levels "조직임원","감독급/기사",..: 3 3 2 3 3 5 2 2 6 3 ...
##  $ r_union      : Factor w/ 2 levels "노조없음","노조있음": 2 1 1 1 1 1 1 1 1 1 ...
##  $ r_womanratio : num  4 3 3 2 3 1 4 3 3 3 ...
##  $ r_workinghour: num  999 12 18 11 13 12 8 8 8 8 ...
##  $ r_income1    : num  NA 3 NA 10 9 NA 10 6 NA 1 ...
##  $ r_marital    : Factor w/ 4 levels "미/비혼","기혼",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ r_educ       : Factor w/ 5 levels "중졸이하","고졸",..: 2 4 5 1 4 3 4 2 2 4 ...
##  $ r_job        : num  5 4 4 6 1 3 8 8 3 2 ...
##  $ r_career     : num  7 13 19 20 14 3 21 21 11 3 ...
##  $ r_employ     : Factor w/ 5 levels "독자제작","사용자",..: 4 4 1 1 4 2 1 1 4 4 ...
##  $ r_gender     : Factor w/ 2 levels "남성","여성": 2 2 2 2 1 2 1 2 1 1 ...
class(MD1)
## [1] "data.frame"
View(MD2)

1)젠더 섹슈얼리티 인식 중 1~8번

library(dplyr)
MD2 <- MD2 %>% mutate(gsrecog1 = (MD1$X.1.젠더인식1
                                  + MD1$X.1.젠더인식2
                                  + MD1$X.1.젠더인식3
                                  + MD1$X.1.젠더인식4
                                  + MD1$X.1.젠더인식5
                                  + MD1$X.1.젠더인식6
                                  + MD1$X.1.젠더인식7
                                  + MD1$X.1.젠더인식8)/8)
summary(MD2$gsrecog1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   1.000   1.375   1.499   1.875   3.125       4

2) 조직문화인식 중 1~6번(위계 및 네트워크) / 7~10번(성차별)

MD2 <- MD2 %>% mutate(ocrecog1 = (MD1$X.2.조직문화평가1
                                                + MD1$X.2.조직문화평가2
                                                + MD1$X.2.조직문화평가3
                                                + MD1$X.2.조직문화평가4
                                                + MD1$X.2.조직문화평가5
                                                + MD1$X.2.조직문화평가6)/6)
summary(MD2$ocrecog1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   2.333   2.667   2.645   3.000   3.833       4

3) 조직문화인식 중 7~10번(성차별)

MD2 <- MD2 %>% mutate(ocrecog2 = (MD1$X.2.조직문화평가7
                                                + MD1$X.2.조직문화평가8
                                                + MD1$X.2.조직문화평가9
                                                + MD1$X.2.조직문화평가10)/4)
summary(MD2$ocrecog2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   1.750   2.250   2.174   2.750   4.000       6

4) 조직문화경험 중 1~3번(폭력적 모욕적 경험)

MD2 <- MD2 %>% mutate(ocexperi1 = (MD1$X.3.조직문화경험1
                                   + MD1$X.3.조직문화경험2
                                   + MD1$X.3.조직문화경험3)/3)
summary(MD2$ocexperi1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   1.000   1.333   1.559   2.000   4.667       6

5) 조직문화경험 중 4~5번(성차별 경험)

MD2 <- MD2 %>% mutate(ocexperi2 = (MD1$X.3.조직문화경험4
                                   + MD1$X.3.조직문화경험5
                                   + MD1$X.3.조직문화경험6)/3)
summary(MD2$ocexperi2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   1.000   1.000   1.357   1.333   4.667       6

6) 조직문화 해결방안 중 2~3번(여성할당제, 여성감독 투자)

MD2 <- MD2 %>% mutate(affirma1 = (MD1$X.4.조직문화인식2
                                + MD1$X.4.조직문화인식3)/2)
summary(MD2$affirma1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   2.000   2.500   2.599   3.000   4.000       5

7) 성희롱/성폭력 통념 중 1~4번(여성 및 피해자 통념)

MD2 <- MD2 %>% mutate(scmt1 = (MD1$X.6.성희롱성폭력통념1
                                             + MD1$X.6.성희롱성폭력통념2
                                             + MD1$X.6.성희롱성폭력통념3
                                             + MD1$X.6.성희롱성폭력통념4)/4)
summary(MD2$scmt1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   1.250   1.750   1.671   2.000   3.500       7

8) 성희롱/성폭력 통념 중 6~10번(남성 및 가해자 통념)

MD2 <- MD2 %>% mutate(scmt2 = (MD1$X.6.성희롱성폭력통념6
                                             + MD1$X.6.성희롱성폭력통념7
                                             + MD1$X.6.성희롱성폭력통념8
                                             + MD1$X.6.성희롱성폭력통념9
                                             + MD1$X.6.성희롱성폭력통념10)/5)
summary(MD2$scmt2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   1.000   1.200   1.316   1.600   3.000       5

9) 직접경험_가해자 수

나중에…

10) 직접경험_가해자 직급

MD2 <- MD2 %>% mutate(assail_class1 = MD1$X.10.가해자직급1)
MD2$assail_class1<- factor(MD2$assail_class1, level=c(1:5), label=c("상급자", "동급자", "하급자", "거래처 직원 및 업계 관계자", "기타"))
summary(MD2$assail_class1)
##                     상급자                     동급자 
##                        205                         53 
##                     하급자 거래처 직원 및 업계 관계자 
##                          5                         25 
##                       기타                       NA's 
##                          6                        541

11) 직접경험_가해자 성별

MD2 <- MD2 %>% mutate(assail_gender1 = MD1$X.12.가해자성별1)
MD2$assail_gender1<- factor(MD2$assail_gender1, level=c(1:2), label=c("남성", "여성"))
summary(MD2$assail_gender1)
## 남성 여성 NA's 
##  270   28  537

12) 직접경험_가해자 연령

MD2 <- MD2 %>% mutate(assail_age1 = MD1$X.13.가해자연령1)
MD2$assail_age1<- factor(MD2$assail_age1, level=c(1:5), label=c("20s", "30s", "40s", "50s", "모름"))
summary(MD2$assail_age1)
##  20s  30s  40s  50s 모름 NA's 
##   57   88  110   34    9  537

13) 직접경험_발생장소

MD2 <- MD2 %>% mutate(place1 = MD1$X.16.발생장소1)
MD2$place1<- factor(MD2$place1, level=c(1:10)
                           , label=c("촬영현장", "회식 등 술자리", "숙소 및 합숙장소"
                                     ,"회의나 미팅", "사무실", "출장, 외부미팅", "공동작업공간"
                                     , "사적만남공간", "전화나 문자, 온라인", "기타"))
summary(MD2$place1)
##            촬영현장      회식 등 술자리    숙소 및 합숙장소         회의나 미팅 
##                  73                 150                  14                   8 
##              사무실      출장, 외부미팅        공동작업공간        사적만남공간 
##                  24                   7                   6                   8 
## 전화나 문자, 온라인                기타                NA's 
##                   2                   5                 538

14) 직접경험_발생단계

MD2 <- MD2 %>% mutate(stage1 = MD1$X.17.발생단계1)
MD2$stage1<- factor(MD2$stage1, level=c(1:5)
                           , label=c("입문", "프리프로덕션", "프로덕션", "포스트프로덕션", "기타"))
summary(MD2$stage1)
##           입문   프리프로덕션       프로덕션 포스트프로덕션           기타 
##             21             70            150             28             27 
##           NA's 
##            539

15) 직접경험 발생조직 여성비율

MD2 <- MD2 %>% mutate(victim_wratio1 = MD1$X.19.발생조직여성비율)
MD2$victim_wratio1<- factor(MD2$victim_wratio1, level=c(1:6)
                                   , label=c("10%미만", "10~30%", "30~50%", "50~70%", "70%이상","기타"))
summary(MD2$victim_wratio1)
## 10%미만  10~30%  30~50%  50~70% 70%이상    기타    NA's 
##      53     107      88      25      16       5     541

16) 직접경험 피해 반복

MD2 <- MD2 %>% mutate(victim_repe1 = MD1$X.20.피해반복)
MD2$victim_repe1 <- factor(MD2$victim_repe1, level=c(1:4)
                                  , label=c("1회", "2~3회", "많이 반복", "기타"))
summary(MD2$victim_repe1)
##       1회     2~3회 많이 반복      기타      NA's 
##       133       114        44         5       539

17) 직접경험 대처 방법

MD2 <- MD2 %>% mutate(victim_respon1 = MD1$X.21.피해대처방법1)
MD2$victim_respon1 <- factor(MD2$victim_respon1, level=c(1:9)
                                    , label=c("참고넘어감", "친구, 동료에게 개인적으로 이야기하고 넘어감"
                                              , "가해자에게 개인적으로 사과 요구", "임원, 감독 등 상급자 보고"
                                              , "영화계 전담 기구 통해 처리", "외부 기관 통해 처리",
                                              "언론 제보 또는 SNS 게시", "경찰 신고", "기타"))
summary(MD2$victim_respon1)
##                                  참고넘어감 
##                                         159 
## 친구, 동료에게 개인적으로 이야기하고 넘어감 
##                                          76 
##             가해자에게 개인적으로 사과 요구 
##                                          33 
##                   임원, 감독 등 상급자 보고 
##                                          18 
##                  영화계 전담 기구 통해 처리 
##                                           1 
##                         외부 기관 통해 처리 
##                                           1 
##                     언론 제보 또는 SNS 게시 
##                                           0 
##                                   경찰 신고 
##                                           0 
##                                        기타 
##                                           7 
##                                        NA's 
##                                         540

18) 성희롱 성폭력 실태 인식(한국, 영화계, 조직) - 역코딩

MD2$serious1 <- c(4, 3, 2, 1, NA)[match(MD1$문27.성희롱성폭력실태인식1한국, c(1, 2, 3, 4, NA))] 

MD2$serious2 <- c(4, 3, 2, 1, NA)[match(MD1$문27.성희롱성폭력실태인식2영화계, c(1, 2, 3, 4, NA))] 

MD2$serious3 <- c(4, 3, 2, 1, NA)[match(MD1$문27.성희롱성폭력실태인식3조직, c(1, 2, 3, 4, NA))]
summary(MD2$serious1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   3.000   3.000   3.298   4.000   4.000      13
summary(MD2$serious2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   3.000   3.000   2.974   3.000   4.000      18
summary(MD2$serious3)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   1.000   2.000   1.943   2.000   4.000      13

19) 계약체결방식

MD2 <- MD2 %>% mutate(contract1 = MD1$X.361.계약체결방식)
MD2$contract1 <- factor(MD2$contract1, level=c(1:5)
                               , label=c("제작사와 계약", "팀장과 계약", "하도급회사와 계약", "잘 모름", "기타"))
summary(MD2$contract1)
##     제작사와 계약       팀장과 계약 하도급회사와 계약           잘 모름 
##               413                58                30                19 
##              기타              NA's 
##                 5               310

20) 현재 조직 여성 비율

MD2$r_womanratio <- factor(MD2$r_womanratio, level=c(1:6)
                                 , label=c("10%미만", "10~30%", "30~50%", "50~70%", "70%이상","기타"))
summary(MD2$r_womanratio)
## 10%미만  10~30%  30~50%  50~70% 70%이상    기타    NA's 
##      53     218     312     128      70      10      44

21) 구직경로

MD2 <- MD2 %>% mutate(findjob1 = MD1$X.40.구직경로1)
MD2$findjob1 <- factor(MD2$findjob1, level=c(1:7)
                              , label=c("공채/모집공고", "학교, 교수 소개", "학원 소개"
                                        , "동료, 선후배, 아는사람", "가족, 친인척", "스탭 직업 교육", "기타"))
summary(MD2$findjob1)
##          공채/모집공고        학교, 교수 소개              학원 소개 
##                    245                    102                     16 
## 동료, 선후배, 아는사람           가족, 친인척         스탭 직업 교육 
##                    378                     17                     20 
##                   기타                   NA's 
##                     17                     40

22) 미투 이후 긍정적/부정적 변화 변수

MD2 <- MD2 %>% mutate(metoopositive1 = (MD1$X.28.미투이후변화4조심하는분위기 
                                                      + MD1$X.28.미투이후변화5문제제기및공론화분위기
                                                      + MD1$X.28.미투이후변화72차가해감소)/3) #변수 3개 합친거니깐 3으로 나눠서 1~4점 척도
MD2 <- MD2 %>% mutate(metoonegative1 = (MD1$X.28.미투이후변화1같이일하기기기피
                                                      + MD1$X.28.미투이후변화2남성끼리회식
                                                      + MD1$X.28.미투이후변화3분위기경직
                                                      + MD1$X.28.미투이후변화6가해자여론재판
                                                      + MD1$X.28.미투이후변화8미투조롱)/5)
summary(MD2$metoopositive1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   1.000   2.333   2.667   2.749   3.000   4.000      18
summary(MD2$metoonegative1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##    1.00    2.20    2.40    2.39    2.80    3.80      21

23) 성희롱/성폭력 2년 내 직접 피해(하나라도 있으면 1, 그렇지 않으면 0)

MD1$harrassment1 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년1, c(1, 2, NA))]
MD1$harrassment2 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년2, c(1, 2, NA))]
MD1$harrassment3 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년3, c(1, 2, NA))]
MD1$harrassment4 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년4, c(1, 2, NA))]
MD1$harrassment5 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년5, c(1, 2, NA))]
MD1$harrassment6 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년6, c(1, 2, NA))]
MD1$harrassment7 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년7, c(1, 2, NA))]
MD1$harrassment8 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년8, c(1, 2, NA))]
MD1$harrassment9 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년9, c(1, 2, NA))]
MD1$harrassment10 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년10, c(1, 2, NA))]
MD1$harrassment11 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년11, c(1, 2, NA))]
MD1$harrassment12 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년12, c(1, 2, NA))]
MD1$harrassment13 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년13, c(1, 2, NA))]
MD1$harrassment14 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년14, c(1, 2, NA))]
MD1$harrassment15 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년15, c(1, 2, NA))]
MD1$harrassment16 <- c(1, 0, NA)[match(MD1$X.71.직접피해경험2년16, c(1, 2, NA))]
MD2 <- MD2 %>% mutate(T_harrassment1 = ifelse ((MD1$harrassment1
                                                              + MD1$harrassment2
                                                              + MD1$harrassment3
                                                              + MD1$harrassment4
                                                              + MD1$harrassment5
                                                              + MD1$harrassment6
                                                              + MD1$harrassment7
                                                              + MD1$harrassment8
                                                              + MD1$harrassment9
                                                              + MD1$harrassment10
                                                              + MD1$harrassment11
                                                              + MD1$harrassment12
                                                              + MD1$harrassment13
                                                              + MD1$harrassment14
                                                              + MD1$harrassment15
                                                              + MD1$harrassment16) >= 1, 1, 0))
MD2$T_harrassment1 <- factor(MD2$T_harrassment1, level=c(0, 1), label=c("없음", "있음"))
summary(MD2$T_harrassment1)
## 없음 있음 NA's 
##  532  297    6

24) 위 변수가 하나라도 경험했으면 1, 아니면 0이었다면, 이번에는 모두 다 그냥 더한 걸로 연속 변수를 만들어보자

MD2 <- MD2 %>% mutate(T_harrassment2 = MD1$harrassment1
                                    + MD1$harrassment2
                                    + MD1$harrassment3
                                    + MD1$harrassment4
                                    + MD1$harrassment5
                                    + MD1$harrassment6
                                    + MD1$harrassment7
                                    + MD1$harrassment8
                                    + MD1$harrassment9
                                    + MD1$harrassment10
                                    + MD1$harrassment11
                                    + MD1$harrassment12
                                    + MD1$harrassment13
                                    + MD1$harrassment14
                                    + MD1$harrassment15
                                    + MD1$harrassment16)
summary(MD2$T_harrassment2) 
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##  0.0000  0.0000  0.0000  0.9457  1.0000 14.0000       6

25) 노동시간 결측치 제거(999, 9999, 99999)

  • 왜인지 몰라도 sav파일에서 노동시간은 결측치 처리가 안되어있었다. 그래서 이거 처리한다.
MD2 <- mutate(MD2, r_workinghour = ifelse(r_workinghour ==999, NA
                                            , ifelse(r_workinghour ==9999, NA
                                                     , ifelse(r_workinghour==99999, NA
                                                              , r_workinghour))))
summary(MD2$r_workinghour) 
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##    1.00    9.00   10.50   10.71   12.00   25.00     304

7 결측치 확인하기

library(naniar)
class(MD2)
## [1] "data.frame"
a <-miss_var_summary(MD2)
View(a)
gg_miss_var(MD2) #위 결과를 그림으로 표현

gg_miss_var(MD2, show_pct = T) #퍼센트 그림으로 표현

8 최종적으로 만들어진 데이터 저장하기

save.image(file  = "C:/RRR/movie/moviedata(210301).RData")
write.table(MD2, file = "C:/RRR/movie/MD2.csv"
            , sep = "," #새 데이터의 열 구분은 "," (csv파일이니깐)
            , row.names = FALSE)