R, Rstudio

외부데이터 불러오고 정리하기 (csv파일 불러오기,열 제목header 2개일 때)

뜻 지, 깨달음 오 2022. 9. 4. 01:48

목차

1. csv 데이터 R로 불러오기

2. header 2개인 데이터를 header 1개로 만들기

 

사용 데이터: 한국여성정책연구원 -근로자의 근속년수 및 근로시간(성/사업체규모/교육정도별)

https://gsis.kwdi.re.kr/statHtml/statHtml.do?orgId=338&tblId=DT_1TD1201

 

KOSIS

 

gsis.kwdi.re.kr

 

데이터는 이렇게 생겼습니다. csv 데이터이고, 현재 header가 2개입니다.

 

이를 먼저 Rstudio로 불러오겠습니다.

 

먼저 파일을 우클릭하고, 맨 밑에 있는 속성을 클릭합니다.

보안 탭에 가면 개체 이름을 확인할 수 있는데, 이 개체 이름을 복붙하면 됩니다.

이를 R에 불러올때는 별도의 패키지가 필요하지는 않고,

변수명 <- read.csv("개체이름 복붙한거")

이 문법으로 쓰면 됩니다.

여기서도 주의할 사항이 있어요. 일단 전 e라는 변수에 데이터를 불러올건데,

e <- read.csv("C:\Users\82109\Downloads\근로자의_근속년수_및_근로시간_성_사업체규모_교육정도별.csv")

이렇게 쓰면 데이터가 안불러와집니다... 빗금이 잘못되어서 그런데, 여기에는 두가지 해결 방법이 있습니다.

1. \ 빗금 두개씩 넣기

e <- read.csv("C:\\Users\\82109\\Downloads\\근로자의_근속년수_및_근로시간_성_사업체규모_교육정 도별.csv")

 2. / 빗금으로 대체하기 

e <- read.csv("C:/Users/82109/Downloads/근로자의_근속년수_및_근로시간_성_사업체규모_교육정도별.csv")

둘중에 아무거나 써도 결과는 같습니다.

 

 

이렇게 데이터를 불러오고 View(e) 로 데이터를 보면

header (열 제목)이 다 2020이라서 저렇게 나옵니다...

그냥 그 밑에 1행을 열 제목으로 해야겠다는 생각이 듭니다.

 

그러면 이제

1. 기존 header 지우기

2. 기존 1행을 header로 바꾸기 를 해야하는데요

 

기존 header 지우는 것은 쉽습니다.

바로 데이터 불러오는 코드에 옵션 하나만 추가해주는 겁니다.

e <- read.csv("C:/Users/82109/Downloads/근로자의_근속년수_및_근로시간_성_사업체규모_교육정도별.csv", header = F)

마지막에 header=F 를 추가해줘서 이 데이터는 열 제목이 없다!라고 말해주는겁니다.

 

다른 열 제목이 생기고 원래 제목은 1행으로 내려왔습니다.

이제 1열을 지울건데,

데이터명 <- 데이터명[-지울 행 번호,]

이렇게 쓰면 됩니다.

저는 1행을 지울거니까

e <- e[-1,]

이렇게 썼습니다.

반대로 e <- e[1,] 이렇게 쓰면 1행 빼고 다 지워지고요 e <- e[,1] 이렇게 쓰면 1열 빼고 다 지워집니다.

e <- e[1,1] 이렇게 쓰면 1행 1열 빼고 다 지워집니다.

이제 쓸데없는 행 지웠으니까 그 밑에꺼를 열 제목으로 바꾸겠습니다.

names()함수를 사용하면 됩니다.

names(x) <- c("1번째 열 제목","2번째 열 제목", ..., "n번째 열 제목")

이런 함수입니다. 저희는 하나 하나 입력하기엔 이미 행이 하나 있으니까

names(e) <- e[1,]

요런 코드를 적어줄겁니다. "e의 이름에 e의 첫 행을 넣어라" 라는 명령이 되겠네요.

마지막으로 이거 하나만 써주면 e <- e[-1,]

드디어 우리가 원하는, 활용하기 좋은 형태가 됐습니다.

 

정리하자면

e <- read.csv("C:/Users/82109/Downloads/근로자의_근속년수_및_근로시간_성_사업체규모_교육정도별.csv", header = F) e <- e[-1,] names(e) <- e[1,] e <- e[-1,] 1. 데이터 불러오기 (열 제목 없이!!! header = F) 2. 첫 행 지우기 3. 열 제목 = 첫행 넣기 4. 첫 행 지우기

e <- read.csv("C:/Users/82109/Downloads/근로자의_근속년수_및_근로시간_성_사업체규모_교육정도별.csv", header = F) #1. 데이터 불러오기 (열 제목 없이!!! header = F)
e <- e[-1,] #2. 첫 행 지우기
names(e) <- e[1,] # 3. 열 제목 = 첫행 넣기
e <- e[-1,]   # 4. 첫 행 지우기

 

공공 데이터가 특히나 열 제목이 2개인 경우가 많기 때문에 유용하게 쓰실 것 같아서 가져와봤습니다.

도움이 되셨기를 바랍니다.

'R, Rstudio' 카테고리의 다른 글

R 프로그래밍: R에 대한 간단한 소개와 R/R스튜디오 설치방법  (0) 2022.09.04
HISTOGRAM IN R  (0) 2022.09.04