본문 바로가기
국문 가이드/QGIS 기초

[QGIS 기초] Refactor fields 기능을 활용하여 필드 유형 변경하기

by CaptainJ 2022. 10. 8.
반응형

안녕하세요, 

이번 포스팅에서는 한 레이어의 속성 테이블 내 필드 유형을 변경하는 방법에 관해 알아보겠습니다.

 

 

필드란 QGIS에서 벡터 레이어의 속성 테이블을 열었을 때 나오는 값들의 집단으로 생각해주시면 됩니다.

엑셀로 치면 열(Column)에 해당하는 속성으로 보시면 되는데요.

이 필드의 유형 각각을 QGIS 소프트웨어가 문자(Text), 숫자(Number) 등 다양한 유형으로 인식할 수 있도록 변경해주는 기능이 있습니다. 

 

자세한 설명을 위해 베트남 에너지발전소 위치 및 발전용량 CSV 파일을 불러와 보도록 하겠습니다. (CSV 파일 오픈 방법 관련 내용은 지난 포스팅 참고: https://qgis-jaehee.tistory.com/5?category=586300) 

 

다음과 같이 Ctrl+L 를 이용해 CSV 파일을 SHP 형태로 열어줍니다.

마우스 우클릭 > Properties >  Symbology > Graduated 기능을 이용해 Design Capacity를 중심으로 아래와 같이 스타일을 적용해줍니다. (심볼 속성 변경 및 범례 설정 관련 내용은 지난 포스팅 참고: https://qgis-jaehee.tistory.com/6?category=586300)

 

필드 유형을 변경해주기 전에 속성 테이블을 열어 변경 전 모습을 확인해줍니다.

 

그럼 이제 아래와 같이 숫자로 구성된 'Design Capacity (MWe)' 필드의 유형을 텍스트로 변경해보겠습니다. 

 

QGIS 메인 화면으로 돌아와 아래 순서로 "Refactor fields" 기능을 실행해주세요.

메뉴 > Processing > Processing Tool Box > Refactor fields  

 

아래와 같은 창이 뜨면 

Input layer에 불러온 CSV 파일을 선택해준 뒤 Fields mapping 섹션에서 우리가 바꿔주고자 하는 필드인 "Design Capacity"를 찾아주세요.

 

찾으셨다면 우측에 위치한 Type 을 변경해주시면 되는데요.

현재 Decimal number (double) 로 되어있는 필드 유형을 Text로 변경해주겠습니다.

(참고로 Decimal number는 소수점 자리까지 표시되는 숫자 유형이며, 위의 whole number는 소수점 자리가 반올림되어 정수로 표시되는 숫자 유형입니다.)

Text 선택 후 'Run' 버튼을 눌러주세요.

 

작업이 완료되면 QGIS 메인 레이어 창에 아래와 같이 새로운 레이어가 추가됩니다.

"Refactored"라는 이름의 새로운 raw data가 생성되었습니다.

이제 이 파일에 원본 파일과 같은 속성을 적용해보겠습니다.

 

해당 레이어의 마우스 우클릭 > Properties > Symbology > Graduated 클릭 후 Value 에서 'Design Capacity'를 찾아야 하겠죠?

 

그런데 Value 부분의 드롭다운을 내려보면 우리가 찾는 'Design Capacity' 필드가 없습니다.

우리가 필드 유형을 Text로 바꿔주었기 때문이죠.

다시 'Refactor fields' 기능을 이용해 필드 유형을 Decimal number 로 바꿔주신다면 'Design Capacity' 필드가 Value 탭 안에 복구됩니다.

 

이처럼 특정 필드를 기준으로 범례를 설정하고 스타일을 부여하고 싶은데 막상 Symbology 메뉴에 와보니 내가 찾는 필드가 없다면?

이럴 때 Refactor fields 기능을 이용해 필드 유형이 어떻게 지정되어 있는지 확인해보시면 좋을 것 같습니다.

 

이상으로 Refactor fields 기능 이용법에 관한 설명을 마치겠습니다.

감사합니다.

 

반응형

댓글