Converting 2097 Data to WGS84 Longitude and Latitude

JangWon·2023년 2월 8일
0

Latrobe

목록 보기
5/5

QGIS에 지도로 위치를 보여주려면 spatial data가 필요하다.
하지만 불러온 데이터에 latitude, logitude데이터가 없고 x,y데이터가 있을때 변환하는 법을 알아보자

빈칸도 있고, x,y데이터로 되어있는 것을 볼 수 있다. (2097 data)

#python
# WGS84 경위도: GPS가 사용하는 좌표계 EPSG:4326

from pyproj import Proj, transform
import pandas as pd

data = pd.read_csv("korea_hospital_eng.csv", sep=",")
data.head()

proj_1 = Proj(init='epsg:2097')
proj_2 = Proj(init='epsg:4326')

DataFrame = data.copy()

x_list = []
y_list = []

for idx, row in DataFrame.iterrows():
    x, y = row['x'], row['y']
    x_, y_ = transform(proj_1, proj_2, x, y)
    x_list.append(x_)
    y_list.append(y_)
    
data['lon'] = x_list
data['lat'] = y_list

data.head()

이 코드를 통해 WGS84 경도(longitude), 위도(latitude)로 변환시킨다.

-- convert data inf to null
update koreapd.hospital  set lat = null WHERE lat = 'inf';
update koreapd.hospital  set lon  = null WHERE lon  = 'inf';

빈칸이랑 inf로 변환된것을 null 로 변환시켜준다

alter table koreapd.hospital  add geom geometry;
update koreapd.hospital  
set geom = ST_SetSRID(ST_MakePoint(lon::double precision, lat::double precision), 4326) where lat <> '' and lon  <> '';

geom 컬럼을 추가시켜준뒤 경도,위도 데이터를 spatial data로 변환시켜준다.

지도를 통해 어디에 위치해 있는지 확인할 수 있다!!

profile
이것저것 해보기

1개의 댓글

comment-user-thumbnail
2023년 3월 28일

wow 멋져요

답글 달기