레이블이 좌표계인 게시물을 표시합니다. 모든 게시물 표시
레이블이 좌표계인 게시물을 표시합니다. 모든 게시물 표시

2026-10-02

생성형 AI 사용법 5 | 코드를 모르는 사람의 데이터 처리

생성형 AI 사용법 5 | 코드를 모르는 사람의 데이터 처리

📌 3줄 요약

  • 코드 몰라도 생성형 AI로 엑셀·CSV 데이터 정리 가능
  • 받은 결과는 반드시 원본과 대조해 눈으로 검증해야 함
  • 공간데이터는 좌표계·단위 확인이 정확도를 좌우함

어느 재난안전 담당자가 대피소 명단 엑셀 파일 300줄을 받았습니다. 주소 칸에 공백이 뒤섞여 있고, 어떤 줄은 위도·경도가 쉼표로 묶여 한 칸에 들어가 있습니다. 예전 같으면 일일이 손으로 고치거나 코드를 배워야 했을 일이지만, 요즘은 생성형 AI에게 "이 파일 정리해줘"라고 요청하는 것만으로 상당 부분 해결됩니다. 다만 AI가 내놓은 결과를 그대로 믿고 쓰면 안 됩니다. 특히 좌표나 면적처럼 숫자가 중요한 공간데이터는 단위 하나만 틀려도 지도 위 위치가 완전히 엉뚱한 곳으로 튑니다. 이번 편에서는 코드를 몰라도 데이터를 정리하는 방법과, 결과를 눈으로 검증하는 절차를 다룹니다.

Hands holding financial papers for tax preparation and analysis.
자료사진 · 사진: RDNE Stock project / Pexels

📊 엑셀이나 CSV 파일, AI에게 어떻게 맡기나요?

파일을 그대로 채팅창에 올리고 "이 파일에서 주소 칸의 공백을 지우고, 빈 줄은 삭제해줘" 처럼 사람 말로 요청하면 됩니다. 생성형 AI는 업로드된 표를 읽어 구조를 파악하고, 필요한 처리를 설명하거나 직접 수정한 파일을 만들어 줍니다. 중요한 건 요청을 구체적으로 쪼개는 것입니다. "정리해줘" 보다 "A열의 전화번호에서 하이픈을 통일해줘" 처럼 칸 이름과 작업을 콕 집어 말하면 결과가 훨씬 안정적입니다. 재난안전 업무에서는 대피소 명단, 피해 신고 목록처럼 반복 입력되는 표가 많아 이런 정리 작업만 잘 맡겨도 시간이 크게 줄어듭니다.

🐍 코드를 몰라도 파이썬 코드를 요청할 수 있나요?

가능합니다. "파이썬으로 CSV 파일을 열어서 좌표 칸을 위도·경도로 나누는 코드 짜줘"라고 요청하면 AI가 짧은 코드를 만들어 줍니다. 코드를 몰라도 한 줄씩 어떤 뜻인지 설명해 달라고 하면 됩니다. 아래는 예시로 받을 법한 코드입니다.

import pandas as pd
df = pd.read_csv("shelter.csv")
df[["위도","경도"]] = df["좌표"].str.split(",", expand=True)
df.to_csv("shelter_clean.csv", index=False)

이 코드를 실행할 땐 무료로 쓸 수 있는 온라인 실행 환경(검색창에 "파이썬 온라인 실행기"로 찾을 수 있습니다)에 붙여 넣으면 설치 없이 바로 돌려볼 수 있습니다. 대피소나 침수 흔적 좌표 데이터를 이런 식으로 빠르게 정제해두면, 이후 지도 프로그램에 바로 얹어 분석할 수 있습니다.

👀 AI가 만든 결과, 뭘 보고 믿어야 하나요?

결과 파일을 받으면 가장 먼저 행 개수가 원본과 맞는지 확인합니다. 300줄을 넣었는데 280줄만 나왔다면 어딘가 묵인하고 지워진 겁니다. 다음으로 몇 개 줄을 무작위로 골라 원본과 나란히 띄워 눈으로 대조합니다. 이것이 바로 해봐야 아는 것입니다. AI의 설명만 읽고 넘어가지 말고, 반드시 원본 파일을 옆에 켜둔 채 일부 데이터를 손으로 짚어가며 비교해야 합니다. 특히 좌표나 피해 금액처럼 숫자가 들어간 칸은 전부 훑어볼 수 없더라도 최솟값과 최댓값이 상식적인 범위인지 확인하면 이상치를 빠르게 잡아낼 수 있습니다. 재난 통계처럼 한 번 틀리면 보고서 전체 신뢰도가 흔들리는 데이터일수록 이 검증 습관이 중요합니다.

🗺️ 좌표계와 단위, 왜 그렇게 중요한가요?

좌표계는 지구 위 위치를 숫자로 표현하는 약속입니다. 같은 지점이라도 좌표계가 다르면 완전히 다른 숫자로 적힙니다. 흔히 쓰는 위도·경도 체계와, 국내 행정업무에서 쓰는 평면 좌표 체계는 숫자 형태부터 다릅니다. 예를 들어 위도·경도는 소수점 숫자(37.56, 126.97)로 나타나지만 평면 좌표는 미터 단위의 큰 정수(예: 200000, 450000)로 나타납니다. AI에게 좌표 변환을 맡길 때는 "현재 어떤 좌표계인지", "어떤 좌표계로 바꿔야 하는지"를 반드시 말해줘야 합니다. 이 정보를 빼먹으면 AI는 추측으로 변환하고, 결과 지점이 바다 한가운데나 엉뚱한 나라로 찍히는 일이 생깁니다. 홍수 흔적조사나 산사태 위험지 좌표처럼 위치 정확도가 생명인 데이터는 좌표계를 확인하지 않으면 지도에 올렸을 때 전혀 다른 곳을 가리키게 되어 현장 대응이 엉뚱한 곳으로 나갈 수 있습니다.

🧮 단위를 착각하면 어떤 문제가 생기나요?

면적, 거리, 강수량 같은 값은 단위에 따라 숫자 크기가 크게 달라집니다. 침수 면적이 "3200"이라고만 적혀 있으면 제곱미터인지 헥타르인지 알 수 없고, 이걸 헷갈리면 실제보다 100배 큰 피해로 보고될 수도 있습니다. AI에게 데이터를 정리시킬 때도 "이 칸의 단위는 제곱미터입니다" 처럼 명시해야 계산이 꼬이지 않습니다. 결과를 받은 뒤에는 원본 보고서나 현장 조사서의 단위 표기를 다시 한번 대조하는 습관이 필요합니다. 산불 피해 면적, 강수량 집계처럼 숫자 하나로 대응 등급이 달라지는 자료일수록 단위 확인은 생략할 수 없는 절차입니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. 새 대화 시작
    AI 서비스 접속 후 새 채팅을 열고 "엑셀 정리 작업"이라고 주제를 먼저 알림
  2. 파일 업로드
    채팅창의 파일 첨부 버튼(클립 모양 아이콘)으로 엑셀·CSV 파일 올리기
  3. 작업 구체화
    "A열 공백 제거, B열 좌표를 위도·경도로 분리" 처럼 칸 이름과 작업 명시
  4. 결과 요청
    "수정된 파일을 CSV로 내려받게 해줘" 또는 "코드와 함께 설명해줘"라고 요청
  5. 눈으로 대조
    원본과 결과 파일을 나란히 열어 행 수와 샘플 몇 줄을 직접 비교
  6. 좌표계 재확인
    결과 파일을 지도 프로그램에 올리기 전 좌표계 설정값이 맞는지 확인
  7. (화면 구성은 쓰는 서
    (화면 구성은 쓰는 서비스나 버전에 따라 다를 수 있어 못 찾으면 설정이나 도움말 메뉴를 살펴보세요)

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

막연한 요청으로 정리를 맡겼을 때 생기는 문제를 보여주는 예시

이 엑셀 파일 정리해줘

맥락과 형식을 구체적으로 준 정리 요청으로 안정적인 결과를 받는 예시

너는 공공데이터 정리를 돕는 보조자야
첨부한 CSV 파일은 [대피소 명단]이고 칸 구성은 [이름, 주소, 좌표, 수용인원]이야
좌표 칸은 "위도,경도" 형태로 한 칸에 섞여 있으니 위도와 경도를 각각 다른 칸으로 분리해줘
주소 칸의 앞뒤 공백은 제거하고, 수용인원이 비어 있는 행은 "미확인"으로 채워줘
작업 후 원본과 비교했을 때 행 개수가 같은지 알려주고, 수정한 내용을 표로 요약해줘
결과는 CSV 파일로 내려받을 수 있게 해줘

받은 결과에서 반드시 확인할 것: 원본과 결과의 행 개수 일치 여부, 좌표 분리가 정확한지 샘플 대조, 좌표계 표기 누락 여부

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • 가지고 있는 엑셀 파일 일부를 AI에게 올려 공백 제거를 요청해보기
  • 결과 파일의 행 개수를 원본과 직접 세어 비교하기
  • 좌표 칸이 있다면 숫자 형태(소수점 vs 큰 정수)로 좌표계 추정해보기

❓ 자주 묻는 질문

Q. 코드를 전혀 몰라도 파이썬 코드를 실행할 수 있나요?
A. 온라인 실행 환경을 쓰면 설치 없이 코드를 붙여 넣고 실행 버튼만 눌러도 됩니다. 다만 코드가 무슨 일을 하는지 한 줄씩 설명을 요청해 이해하고 쓰는 것이 안전합니다.

Q. AI가 만든 결과 파일이 맞는지 어떻게 확실히 알 수 있나요?
A. 완벽히 보장하는 방법은 없고, 원본과 일부를 대조하는 수작업 검증이 필수입니다. 특히 행 개수, 숫자 범위, 좌표 형태 세 가지만 확인해도 큰 오류는 대부분 걸러집니다.

Q. 좌표계가 다른지 어떻게 알아보나요?
A. 좌표 숫자가 소수점이 있는 작은 값이면 위도·경도 계열, 소수점 없는 큰 정수면 평면 좌표 계열일 가능성이 큽니다. 확실하지 않으면 데이터를 준 기관이나 원본 문서의 메타데이터를 확인하는 것이 정확합니다.

코드를 몰라도 생성형 AI 덕분에 데이터 정리의 문턱은 많이 낮아졌지만, 결과를 검증하는 눈은 여전히 사람 몫입니다. 다음 편에서는 이렇게 정리한 데이터를 지도 위에 직접 올려 시각화하는 방법을 다뤄보겠습니다.

생성형AI 사용법 시리즈 5편 · 전체 15편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

2026-09-23

좌표계(CRS)가 헷갈릴 때 | EPSG:4326과 5186 | GeoAI 기초 6편

좌표계(CRS)가 헷갈릴 때 | EPSG:4326과 5186 | GeoAI 기초 6편

🎬 1분 브리핑 영상

📌 3줄 요약

  • 지리좌표계는 경·위도, 투영좌표계는 미터 단위로 거리를 잰다.
  • 한국에서 EPSG:4326과 EPSG:5186은 목적에 따라 구분해 써야 한다.
  • 좌표계가 어긋나면 레이어가 엉뚱한 곳에 놓이고 면적 계산이 틀어진다.

QGIS에 홍수 침수 범위 레이어를 불러왔는데, 분명히 서울 데이터인데 지도 위에서 아프리카 근처에 점이 찍혀 있는 경험을 해보신 적 있으신가요? 혹은 두 레이어를 겹쳤더니 딱 맞아야 할 도로와 건물이 수십 미터씩 어긋나 있는 경우도 있습니다. 이런 증상의 가장 흔한 원인이 바로 좌표계, 즉 CRS(Coordinate Reference System, 지구 위 위치를 숫자로 나타내는 기준 체계)가 서로 다르거나 잘못 지정되어 있기 때문입니다.

GIS를 처음 배울 때 좌표계는 그냥 넘어가기 쉬운 개념이지만, 재난안전 업무처럼 공간 정확도가 생명과 직결되는 분야에서는 좌표계 오류 하나가 대피소 위치를 엉뚱한 행정구역에 배치하거나 침수 면적을 잘못 계산하는 결과로 이어질 수 있습니다. 이번 글에서는 지리좌표계와 투영좌표계의 차이, 한국에서 자주 쓰는 EPSG 코드, 그리고 좌표계가 어긋났을 때 어떤 순서로 해결하는지를 차근차근 짚어 보겠습니다.

🌐 지리좌표계와 투영좌표계는 어떻게 다른가요?

지리좌표계(Geographic CRS)는 경도와 위도처럼 각도 단위로 위치를 표현합니다. 지구를 둥근 타원체로 보고 "북쪽으로 몇 도, 동쪽으로 몇 도"라고 말하는 방식입니다. 대표적인 예가 WGS84인데, 이것을 EPSG 코드로 표현하면 EPSG:4326입니다. GPS 기기가 찍어주는 좌표, 스마트폰 지도 앱의 위치 공유, 국제 데이터 교환에 가장 흔히 쓰입니다.

투영좌표계(Projected CRS)는 둥근 지구를 평면 종이 위에 펼칠 때 쓰는 기준입니다. 종이에 펼치면서 어쩔 수 없이 면적이나 모양에 왜곡이 생기는데, 투영법의 종류에 따라 거리 왜곡을 줄이거나 면적 왜곡을 줄이는 방향을 선택합니다. 단위는 미터 또는 피트가 됩니다. 재난안전 업무에서 침수 면적이 몇 제곱킬로미터인지, 대피 경로가 몇 미터인지 계산하려면 반드시 투영좌표계 위에서 작업해야 합니다. 각도 단위인 경위도로는 거리와 면적을 직접 계산할 수 없기 때문입니다.

🗺️ 한국에서 EPSG:4326과 EPSG:5186은 각각 언제 쓰나요?

EPSG:4326은 앞서 말한 WGS84 지리좌표계입니다. 웹 지도, API, GPS 데이터, 국제 공유 데이터에서 자주 만납니다. 좌표값이 경도 126~130, 위도 34~38 범위에 있다면 이 체계일 가능성이 높습니다.

EPSG:5186은 국토지리정보원이 고시한 한국 중부원점 TM(Transverse Mercator, 횡단 메르카토르) 투영좌표계입니다. 국내 공간 분석에서 가장 흔히 권장되는 투영좌표계 중 하나로, 단위는 미터입니다. 국가공간정보포털이나 행정안전부 재난정보 레이어처럼 국내 공공 데이터에서 자주 볼 수 있습니다. 좌표값이 200,000~600,000 범위라면 투영좌표계를 의심해 볼 수 있습니다.

추가로 EPSG:5179(Korea 2000 / Unified CS)도 자주 등장합니다. 전국 단위 지도를 하나의 투영계로 커버하고 싶을 때 씁니다. EPSG:3857은 웹 메르카토르로, OpenStreetMap이나 카카오맵처럼 웹 타일 지도에 주로 쓰이지만 고위도로 갈수록 면적 왜곡이 크기 때문에 정확한 면적·거리 계산에는 적합하지 않습니다. 산불 피해 범위나 홍수 침수 구역의 면적을 공식 보고서에 올릴 때는 EPSG:5186 또는 EPSG:5179 위에서 계산하는 것이 안전합니다.

🔍 좌표계가 어긋났을 때 어떤 증상이 나타나나요?

가장 흔한 증상은 레이어가 엉뚱한 위치에 놓이는 것입니다. 대표적인 경우가 좌표값은 있는데 CRS 정보가 없거나 잘못 할당된 경우입니다. 예를 들어 실제로는 EPSG:5186 미터 좌표인 데이터를 QGIS가 EPSG:4326(경위도)으로 읽으면, 200,000을 경도 200도로 해석해서 지도 밖으로 날아가 버립니다.

두 번째 증상은 레이어는 비슷한 위치에 보이는데 수십 미터에서 수백 미터씩 어긋나는 경우입니다. 이때는 QGIS가 프로젝트 CRS에 맞춰 실시간으로 좌표를 변환하는 '온더플라이(On the Fly) 투영' 기능이 작동하고 있을 가능성이 큽니다. 두 레이어의 CRS가 다르면 겹쳐 보이더라도 실제 지오메트리 데이터는 서로 다른 기준점을 참조하므로 공간 연산(교차, 버퍼, 면적 계산 등) 결과가 틀어집니다. 산사태 위험 구역과 주민 거주지를 겹쳐 취약 인구를 추출하는 분석을 할 때 이 오류가 숨어 있으면 결과를 신뢰할 수 없습니다.

🛠️ 좌표계 오류는 어떤 순서로 해결하면 되나요?

해봐야 아는 것이기도 한데, 먼저 레이어의 현재 CRS 정보를 직접 눈으로 확인하는 것이 첫 번째 단계입니다. QGIS에서는 레이어 패널에서 해당 레이어를 오른쪽 클릭 > 속성(Properties) > 정보(Information) 탭을 열면 "CRS" 항목에 현재 지정된 좌표계 이름과 EPSG 코드가 표시됩니다. 여기서 'Unknown CRS' 또는 전혀 다른 EPSG 코드가 보이면 문제의 원인이 확인된 것입니다.

두 번째는 '정의 설정'과 '재투영'을 구분하는 일입니다. 데이터 파일에 CRS 정보 자체가 없을 때는 레이어 오른쪽 클릭 > 레이어 CRS 설정(Set Layer CRS)으로 올바른 CRS를 할당합니다. 반면 CRS는 이미 맞는데 다른 좌표계로 변환이 필요할 때는 벡터 데이터라면 벡터(Vector) > 데이터 관리 툴(Data Management Tools) > 레이어 재투영(Reproject Layer)을 사용합니다. 래스터라면 래스터(Raster) > 투영(Projections) > 워프(변환)(Warp (Reproject)) 메뉴를 이용합니다. 메뉴 이름은 QGIS 버전에 따라 조금씩 다를 수 있으므로, 못 찾을 때는 상단 처리(Processing) > 툴박스(Toolbox)를 열고 "reproject"로 검색하면 버전과 관계없이 찾을 수 있습니다.

세 번째는 재투영 후 결과를 반드시 확인하는 것입니다. 위성영상이나 행정경계 레이어와 겹쳐 놓고 경계선이 맞는지 눈으로 검토한 뒤, 면적 계산이 필요하다면 필드 계산기($area 함수)로 이상한 값이 나오지 않는지 체크합니다. 대피소 위치 데이터라면 한두 곳을 골라 실제 주소와 좌표를 대조해 보는 것이 가장 확실합니다.

📋 프로젝트를 시작할 때 CRS를 어떻게 통일하면 되나요?

여러 출처의 데이터를 함께 쓰는 프로젝트라면 시작 전에 기준 CRS를 하나로 정해 두는 것이 가장 효율적입니다. 국내 공간 분석을 목적으로 한다면 EPSG:5186이나 EPSG:5179 중 기관에서 자주 쓰는 쪽으로 맞추고, 모든 레이어를 해당 CRS로 재투영한 뒤 저장합니다. QGIS에서 프로젝트 CRS는 프로젝트(Project) > 속성(Properties) > CRS 탭에서 설정할 수 있습니다.

데이터를 받을 때마다 파일명 또는 메타데이터에 EPSG 코드를 기록해 두는 습관도 중요합니다. 특히 공공 포털에서 내려받은 shp 파일은 .prj 파일이 함께 있는지 확인하세요. .prj 파일이 없으면 QGIS가 CRS를 자동으로 인식하지 못해 Unknown CRS로 처리합니다. 홍수 대피 경로를 분석하거나 산불 피해 구역 면적을 산정하는 업무처럼 결과의 정확도가 중요한 경우, 데이터 수신 단계에서 CRS를 확인하는 절차를 작업 체크리스트에 포함시켜 두면 나중에 발생할 수 있는 오류를 미리 막을 수 있습니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. CRS 확인
    레이어 패널에서 레이어 오른쪽 클릭 > 속성(Properties) > 정보(Information) 탭 > CRS 항목 확인
  2. CRS 할당
    CRS가 Unknown일 때: 레이어 오른쪽 클릭 > 레이어 CRS 설정(Set Layer CRS) > EPSG 코드 입력 후 확인
  3. 벡터 재투영
    벡터(Vector) > 데이터 관리 툴 > 레이어 재투영(Reproject Layer) > 목표 CRS에 EPSG:5186 입력 후 실행
  4. 래스터 재투영
    래스터(Raster) > 투영(Projections) > 워프(Warp) > 목표 CRS에 EPSG:5186 입력 후 실행
  5. 결과 시각 검토
    재투영된 레이어를 기준 레이어(행정경계 등)와 겹쳐 경계 일치 여부 눈으로 확인
  6. 면적 계산 확인
    레이어 오른쪽 클릭 > 속성 테이블 열기 > 필드 계산기 > $area 입력해 이상값 여부 점검

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

좌표계 오류 원인과 해결 절차를 단계별로 정리해 달라고 요청할 때

너는 GIS 기술 지원 전문가야. 나는 공간정보를 처음 배우는 실무자야.
아래 상황을 읽고, 좌표계 오류의 원인과 해결 순서를 단계별로 설명해 줘.

상황: [데이터 출처(예: 국가공간정보포털 shp 파일)], [사용 도구(예: QGIS 최신 버전)],
[증상(예: 레이어가 지도 밖에 표시됨 / 두 레이어가 수백 미터 어긋남)]

답변 형식:
1. 추정 원인 (2줄 이내)
2. 확인 절차 (번호 목록, 각 줄 1단계)
3. 해결 방법 (재투영 vs CRS 할당 중 무엇인지 구분해서)
4. 재발 방지를 위한 체크리스트 (3항목 이내)

추측이 필요한 경우 "추정:"이라고 표시하고, 확실하지 않은 수치나 메뉴 이름은 단정하지 마.
결과물을 사람이 반드시 검토해야 하는 항목을 마지막에 별도로 적어 줘.

팀원에게 CRS 통일 기준을 안내하는 내부 가이드 초안을 만들 때

너는 공공기관 GIS 업무 담당자를 돕는 기술 문서 작성 보조자야.
아래 조건에 맞는 내부 가이드 초안을 작성해 줘.

기관: [기관명]
주요 업무: [재난안전 공간분석 / 도시계획 등]
사용 도구: [QGIS / ArcGIS Pro 등]
기준 CRS: [EPSG:5186 또는 EPSG:5179]

포함할 내용:
- 데이터 수신 시 CRS 확인 방법 (1~2줄)
- 재투영이 필요한 경우와 아닌 경우 구분
- 파일 저장 시 명명 규칙 예시 (CRS 코드 포함)
- 담당자가 반드시 육안으로 검토해야 하는 항목

전문용어는 처음 나올 때 괄호로 풀어 써. 위협적이거나 단정적인 표현은 쓰지 마.

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • QGIS에 가지고 있는 shp 파일을 불러온 뒤 레이어 오른쪽 클릭 > 속성 > 정보 탭에서 CRS 항목을 직접 읽어보고, EPSG 코드가 무엇인지 확인해 본다.
  • epsg.io 사이트에서 5186, 4326, 5179, 3857을 각각 검색해 지도 미리보기와 단위(degree/metre)가 어떻게 다른지 비교해 본다.
  • QGIS에서 같은 지역의 shp 파일을 EPSG:4326과 EPSG:5186으로 각각 저장한 뒤 필드 계산기에서 $area 값을 비교해, 경위도 좌표 위에서 계산한 면적이 얼마나 틀리는지 직접 확인해 본다.

❓ 자주 묻는 질문

Q. QGIS에서 레이어를 불러왔는데 지도 위에 아무것도 안 보여요. 좌표계 문제인가요?
A. 가능성이 높습니다. 레이어 패널에서 해당 레이어 오른쪽 클릭 > 레이어로 확대(Zoom to Layer)를 눌러서 레이어가 실제로 어디에 놓여 있는지 먼저 확인하세요. 지도 범위 밖 엉뚱한 곳에 있다면 CRS가 잘못 지정되었거나 할당되지 않은 경우입니다.

Q. CRS를 바꾸면 원본 데이터가 손상되나요?
A. 레이어 CRS 설정(Set Layer CRS)은 파일 자체의 좌표값을 바꾸지 않고 해석 기준만 바꿉니다. 반면 재투영(Reproject Layer)은 좌표값 자체를 새 CRS 기준으로 변환해서 새 파일로 저장합니다. 원본을 보존하려면 재투영 전에 원본 파일을 별도로 백업해 두는 것이 안전합니다.

Q. 웹 지도(카카오맵, 네이버 지도)에서 좌표를 복사했는데 QGIS에 붙이면 왜 안 맞나요?
A. 웹 지도에서 제공하는 좌표는 대부분 EPSG:4326(경위도) 기준입니다. QGIS 프로젝트가 EPSG:5186 같은 투영좌표계로 설정되어 있다면, 좌표 입력 시 반드시 해당 좌표가 EPSG:4326임을 명시하거나, 프로젝트 CRS를 일시적으로 4326으로 바꿔서 입력한 뒤 다시 변환해야 합니다.

좌표계는 GIS 작업의 가장 기초적인 설정이지만, 익숙해지기까지 의외로 많은 시행착오를 겪는 부분이기도 합니다. 핵심만 정리하면, 데이터를 받는 순간 CRS를 확인하고, 분석 전에 모든 레이어를 하나의 투영좌표계로 통일하고, 결과를 눈과 수치 두 가지로 검토하는 세 가지 습관이면 대부분의 오류를 예방할 수 있습니다. 재난안전 분야에서는 이 단순한 확인 절차 하나가 대피소 배치 오류나 침수 면적 오산을 막는 안전망이 됩니다. 좌표계를 제대로 맞췄다면 이제 그 위에서 공간 분석을 수행할 차례인데, 다음 편에서는 벡터 데이터의 버퍼(buffer)와 교차(intersect) 분석이 재난안전 업무에서 어떻게 쓰이는지를 살펴보겠습니다.

GeoAI 기초 시리즈 6편 · 전체 43편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

2026-09-21

QGIS 입문 | 처음 열고 무엇부터 해보면 되나 | GeoAI 기초 5편

QGIS 입문 | 처음 열고 무엇부터 해보면 되나 | GeoAI 기초 5편

📌 3줄 요약

  • QGIS는 설치만 하면 바로 쓸 수 있는 무료 오픈소스 GIS 소프트웨어다.
  • 좌표계·레이어·속성테이블, 이 세 개념을 이해하면 기초가 잡힌다.
  • 오픈 데이터로 첫 실습을 마치면 재난안전 데이터도 다룰 수 있다.

GIS를 배워보고 싶은데 어디서 시작해야 할지 막막한 분들이 많습니다. 비싼 소프트웨어를 사야 하나, 코딩을 먼저 익혀야 하나 고민하다가 결국 시작도 못하는 경우도 흔합니다. 그런데 실은 설치 파일 하나를 내려받아 실행하는 것만으로도 시작할 수 있습니다. 그 도구가 QGIS입니다.

QGIS는 개인도 기관도 별도 비용 없이 쓸 수 있는 오픈소스 GIS 소프트웨어입니다. 전 세계 공공기관, 연구소, 재난관리 현장에서 실제로 활용되고 있고, 한국어 인터페이스도 지원합니다. 이번 글에서는 처음 QGIS를 열었을 때 무엇을 보게 되는지, 반드시 알아야 할 세 가지 개념은 무엇인지, 그리고 첫 실습으로 무엇을 해보면 좋은지를 차근차근 안내합니다.

🖥️ QGIS는 어떻게 설치하고, 처음 화면에서 뭘 봐야 하나요?

QGIS 공식 사이트(qgis.org)에서 운영체제에 맞는 설치 파일을 내려받을 수 있습니다. 버전은 크게 장기 지원 버전과 최신 버전 두 종류가 제공되는데, 안정성을 우선한다면 장기 지원 버전을 선택하는 것이 일반적입니다. 설치 후 처음 실행하면 가운데 지도 캔버스, 왼쪽 레이어 패널, 위쪽 메뉴 바와 툴바가 보입니다. 지도 캔버스는 말 그대로 지도가 그려지는 도화지입니다. 레이어 패널은 현재 불러온 데이터 목록을 보여주는 곳으로, 여기 아무것도 없으면 지도에도 아무것도 안 보입니다. 메뉴 버전에 따라 위치나 이름이 조금씩 다를 수 있으니, 찾기 어려울 때는 상단 메뉴 보기 > 패널에서 원하는 패널을 켜거나 끌 수 있습니다. 재난안전 업무에서는 대피소·침수구역·산사태 위험지역 같은 레이어를 이 캔버스 위에 겹쳐 놓고 상황을 한눈에 파악합니다.

🌐 좌표계가 뭔가요? 왜 신경 써야 하나요?

좌표계(Coordinate Reference System, CRS)는 지구 위의 위치를 숫자로 표현하는 약속 체계입니다. 지구는 둥글고 지도는 평면이기 때문에, 어떤 방식으로 둥근 면을 펼치느냐에 따라 같은 위치의 좌표값이 달라집니다. 예를 들어 위도·경도로 나타내는 WGS84와, 한국에서 주로 쓰는 미터 단위 평면 좌표계인 EPSG:5186은 같은 지점이라도 숫자 자체가 완전히 다릅니다. QGIS에서 레이어를 불러오면 오른쪽 아래 상태 표시줄에 현재 좌표계가 표시됩니다. 레이어마다 좌표계가 다르면 지도 위에서 서로 어긋나 보이는 문제가 생깁니다. 이 상태를 '좌표계 불일치'라고 부르며, 이것을 처음에 잡아 두지 않으면 홍수 범람 구역과 도로 레이어가 수백 미터씩 어긋나는 황당한 결과가 나옵니다. 레이어 오른쪽 클릭 > 레이어 속성 > 소스 탭에서 해당 레이어의 좌표계를 확인하고, 필요하면 레이어 > 저장 > 다른 이름으로 저장에서 좌표계를 바꿔 내보낼 수 있습니다.

📂 레이어란 무엇이고, 어떤 종류가 있나요?

레이어는 GIS에서 데이터를 담는 단위입니다. 투명한 필름지 여러 장을 겹치는 것과 비슷합니다. 한 장에는 도로, 한 장에는 하천, 한 장에는 건물 정보가 들어 있고, 이것을 순서대로 쌓으면 완성된 지도가 됩니다. QGIS에서 다루는 레이어는 크게 벡터(Vector)와 래스터(Raster) 두 종류입니다. 벡터는 점·선·면 형태로 위치를 표현하는 방식이고, 래스터는 위성사진이나 수치표고모델처럼 격자(픽셀)로 이루어진 데이터입니다. 레이어를 불러올 때는 상단 메뉴 레이어 > 레이어 추가에서 벡터 레이어 추가, 래스터 레이어 추가, WMS/WMTS 등 원하는 유형을 고릅니다. 레이어 패널 안에서 레이어 이름 왼쪽 체크박스를 끄면 해당 레이어가 캔버스에서 숨겨지므로, 여러 레이어를 켜고 끄며 원하는 정보만 확인할 수 있습니다. 산불 대응 현장에서는 연소 위험지역(래스터)과 소방서 위치(벡터 점)를 같은 캔버스에 올려 놓고 대응 거리를 분석합니다.

🗂️ 속성 테이블에는 어떤 정보가 들어 있나요?

속성 테이블(Attribute Table)은 레이어에 포함된 각 공간 객체의 정보를 행과 열로 정리한 표입니다. 데이터베이스의 테이블과 구조가 같습니다. 예를 들어 대피소 레이어라면 각 대피소마다 이름, 주소, 수용인원, 운영 기관 같은 정보가 열(Column)로 들어 있고, 각 대피소 하나하나가 행(Row)이 됩니다. 속성 테이블을 보려면 레이어 패널에서 원하는 레이어를 오른쪽 클릭 > 속성 테이블 열기를 선택합니다. 표 안의 특정 행을 클릭하면 지도 위에서 해당 객체가 선택(노란색 하이라이트)되므로 위치와 정보를 동시에 확인할 수 있습니다. 해봐야 아는 것 한 가지가 있는데, 속성 테이블을 열어서 상단 연필 아이콘(편집 모드 전환)을 누르지 않으면 값을 수정할 수 없습니다. 편집 모드로 들어가지 않은 상태에서는 셀을 클릭해도 글자가 바뀌지 않습니다. 직접 열어보고 편집 모드 전후 차이를 확인하는 것이 가장 빠른 이해 방법입니다. 재난 상황에서는 대피소별 수용인원 열을 기준으로 일정 인원 이상인 시설만 골라내는 필터 작업에 속성 테이블이 핵심적으로 쓰입니다.

🎯 첫 실습으로 무엇을 해보면 좋을까요?

첫 실습으로 가장 추천하는 과제는 공개 행정 경계 데이터를 불러와 색상을 바꾸고, 속성 테이블에서 특정 조건으로 객체를 선택해 보는 것입니다. 국가공간정보포털(nsdi.go.kr) 또는 통계지리정보서비스(sgis.kostat.go.kr) 같은 공공 사이트에서 시도·시군구 경계 SHP 파일을 내려받을 수 있습니다. 파일을 내려받은 뒤 QGIS에서 레이어 > 레이어 추가 > 벡터 레이어 추가를 선택하고, 찾아보기 버튼으로 .shp 파일을 지정한 다음 추가 버튼을 누릅니다. 레이어가 캔버스에 올라오면 레이어 패널에서 해당 레이어를 더블 클릭해 레이어 속성 창을 열고, 심볼 탭에서 색상과 테두리를 바꿔 보세요. 이어서 속성 테이블을 열고 상단 표현식으로 객체 선택 버튼(ε 모양 아이콘)을 눌러 인구수나 면적 같은 특정 조건을 입력해 보면, 필터 개념을 몸으로 익히게 됩니다. 이 과정이 익숙해지면 침수 예상 구역 레이어에서 특정 침수 깊이 이상인 구역만 골라 대피소 레이어와 겹쳐 보는 분석으로 자연스럽게 이어집니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. QGIS 설치
    qgis.org 접속 > 다운로드 페이지에서 운영체제 선택 후 장기 지원 버전 설치 파일 내려받기
  2. 데이터 준비
    국가공간정보포털(nsdi.go.kr) 로그인 > 오픈마켓 > 행정경계 SHP 파일 내려받기
    새 프로젝트를 열면 보이는 빈 작업창
    새 프로젝트를 열면 보이는 빈 작업창
  3. 벡터 레이어 추가
    상단 메뉴 레이어 > 레이어 추가 > 벡터 레이어 추가 > 찾아보기로 .shp 파일 선택 > 추가 클릭
    벡터 레이어를 불러온 뒤 레이어 패널에 나타난 모습
    벡터 레이어를 불러온 뒤 레이어 패널에 나타난 모습
  4. 좌표계 확인
    레이어 패널에서 레이어 오른쪽 클릭 > 레이어 속성 > 소스 탭에서 CRS 항목 확인
    화면 오른쪽 아래의 좌표계 표시
    화면 오른쪽 아래의 좌표계 표시
  5. 심볼 변경
    레이어 패널에서 레이어 더블 클릭 > 심볼 탭 > 색 채우기·테두리 색 변경 후 확인 클릭
  6. 속성 테이블 조회
    레이어 오른쪽 클릭 > 속성 테이블 열기 > 표현식으로 객체 선택 버튼 클릭 > 조건식 입력 후 선택 실행
    속성 테이블에서 값 확인하기
    속성 테이블에서 값 확인하기

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다.

✍️ 그대로 복사해 쓰는 프롬프트

QGIS에서 처음 마주치는 오류 메시지나 개념을 빠르게 이해하도록 AI에게 물을 때 쓰는 프롬프트

너는 GIS 초보자를 돕는 QGIS 튜터다.
내가 QGIS를 사용하다 겪은 문제나 이해 안 되는 개념을 설명하면, 다음 형식으로 답해줘.
1. 이 오류나 개념이 왜 생기는지 원리를 두 문장 이내로 설명
2. QGIS 화면에서 실제로 눌러야 할 메뉴와 버튼 이름을 순서대로 나열
3. 해결 후 결과가 올바른지 확인하는 방법 한 줄
전문용어는 처음 나올 때 괄호 안에 한 줄 풀이를 붙여줘.
확인되지 않은 버전 정보나 외부 링크는 만들지 마.
내 문제: [QGIS에서 겪은 오류 메시지 또는 이해 안 되는 개념을 여기에 붙여넣기]
사용 중인 운영체제: [Windows / macOS / Linux]

공개 재난 데이터를 QGIS 실습에 활용하는 방법을 단계별로 안내받을 때 쓰는 프롬프트

너는 재난안전 분야 GIS 실무 교육 전문가다.
아래 조건에 맞는 QGIS 실습 시나리오를 만들어줘.
대상 재난 유형: [홍수 / 산사태 / 산불 중 하나 선택]
사용 가능한 데이터: 공개 행정경계 SHP, 공개 수치표고모델(DEM) 래스터
실습 목표: QGIS에서 레이어 추가 → 좌표계 확인 → 속성 테이블 필터 → 결과 저장까지 한 번에 경험
형식: 단계별 번호 목록, 각 단계마다 QGIS 메뉴 이름과 버튼 이름을 실제 명칭으로 표기
제약: 유료 데이터나 로그인이 필요한 서비스는 제외, 초보자가 1시간 내에 완료할 수 있는 분량
사람이 반드시 확인해야 할 항목: 좌표계 일치 여부, 속성 테이블 필드명이 한글 깨짐 없이 표시되는지

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • 국가공간정보포털(nsdi.go.kr)에서 시군구 경계 SHP 파일을 내려받아 QGIS에 불러오고, 좌표계가 무엇으로 설정되어 있는지 오른쪽 아래 상태 표시줄에서 직접 확인해 본다.
  • 속성 테이블을 열어 표현식으로 객체 선택 기능으로 특정 조건(예: 면적이 일정 값 이상)을 입력해 보고, 선택된 객체가 캔버스에서 어떻게 강조되는지 눈으로 확인한다.
  • 같은 지역의 레이어 두 개를 각각 다른 좌표계로 불러와 캔버스에서 어긋나는 현상을 직접 재현해 보고, 좌표계를 맞춘 뒤 차이를 비교한다.

❓ 자주 묻는 질문

Q. QGIS는 완전 무료인가요? 나중에 비용이 생기지는 않나요?
A. QGIS는 오픈소스 라이선스(GPL)로 배포되어 소프트웨어 자체를 내려받아 쓰는 데는 별도 비용이 없습니다. 다만 함께 쓰는 플러그인이나 데이터 서비스는 제공 주체에 따라 정책이 다를 수 있으므로, 개별 플러그인의 라이선스는 설치 전에 확인하는 것이 좋습니다.

Q. SHP 파일 말고 다른 형식의 데이터도 QGIS에서 열 수 있나요?
A. 네, QGIS는 GeoJSON, KML, GeoPackage, CSV(좌표 열 포함), GeoTIFF 등 다양한 공간 데이터 형식을 지원합니다. CSV 파일처럼 좌표 정보가 열로 들어 있는 파일은 레이어 > 레이어 추가 > 구분된 텍스트 레이어 추가를 통해 불러올 수 있습니다.

Q. 좌표계를 잘못 지정했을 때 데이터가 손상되나요?
A. 원본 파일 자체가 바뀌지는 않습니다. 좌표계를 잘못 지정하면 지도 위 표시 위치가 틀어질 뿐이고, 레이어 속성에서 올바른 좌표계로 다시 지정하면 됩니다. 단, 잘못된 좌표계로 다른 이름으로 저장한 경우에는 원본 파일을 다시 불러와 처음부터 작업하는 것이 안전합니다.

QGIS를 처음 열었을 때 낯선 화면에 당황하는 것은 누구나 겪는 일입니다. 하지만 좌표계, 레이어, 속성 테이블 이 세 가지 개념만 자기 것으로 만들면 그 이후의 모든 작업이 이 세 가지 위에서 돌아간다는 것을 금방 느끼게 됩니다. 처음부터 모든 기능을 파악하려 하지 말고, 오늘 안내한 순서대로 파일 하나를 불러와 색을 바꾸고 속성 테이블을 한 번 열어보는 것만으로도 충분한 시작입니다. 실제 재난안전 업무에서는 이 기초 위에 공간 분석(버퍼, 오버레이, 경로 분석 등)이 얹히는데, 다음 편에서는 QGIS에서 처음 해보는 공간 분석, 그중에서도 '버퍼'와 '교차 분석'이 재난 대피 계획에서 어떻게 쓰이는지를 다룰 예정입니다.

GeoAI 기초 시리즈 5편 · 전체 43편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

GeoAI 위성·드론 영상 분석, 재난대응 산업이 뜬다 | 재난안전과 GeoAI

GeoAI 위성·드론 영상 분석 기술이 재난대응 산업의 중심으로 떠오르고 있다. 누리호 5차 발사, 위성·드론 영상 분석 스타트업, ArcGIS 경사지 위험 분석 서비스까지 오늘의 관련 소식을 정리했다. 📌 3줄 요약 아크넥사는 위성·드론 영상을...