서울 남양주를 비즈니스 모델로 선택하여 전기차 입지 선정 분석을 해보겠습니다. 그전에 시각화를 할 수 있도록 데이터 프레임을 만들어 보겠습니다.
변수 선택
**격자 데이터
남양주의 격자마다 전기차 우선 설치 지역 순위를 나타내겠습니다. 그러기 위해서 남양주 격자 데이터를 가져왔습니다.
**남양주 변수 데이터
전기차 우선 설치 지역에 영향을 주는 요인의 변수 데이터를 가져오겠습니다. 이전 블로그에서도 업로드했지만 충전소, 변압기, 전기차, 전기안전관리자, 도서관 등 전기차 충전소 입지 선정에 영향을 주는 변수들입니다. 위에 그림에서 보이는 포인트 들이 충전소, 전기차, 변압기, 전기안전관리자, 도서관입니다. 만약 격자 내 포인트 개수가 많을수록 순위에 올라가겠죠???
**남양주 교통량
남양주 교통 데이터입니다. 도로가 많고 차가 많은 지역에 전기차 충전소를 설치한다면 더 좋은 입지 선정이 될 것이라 판단해서 남양주 교통 데이터를 추가했습니다. 격자 내 교통선이 많다면 순위가 올라갈 것입니다.
**남양주 건물 데이터
남양주 건물 데이터입니다. 건물의 종류에 따라 차등 점수를 부여했습니다. 건물이라 동일하게 생각하는 게 아닌 전기차 충전소 입지 선정에 더 영향을 줄 것 같은 건물에 가중치를 좀 더 부여하는 방법입니다. 아파트 보다 대형마트같은 건물에 더 높은 가중치를 부여한 것입니다.
QGIS를 통한 데이터 결합
이제 각각의 데이터들을 이용하여 격자에 대한 데이터 프레임을 만들어 보겠습니다. 결합에 방법은 다양합니다. 폴리곤 내 포인트 개수 카운트, 위치 속성 결합, 단순 데이터 프레임 결합이 있습니다.
**폴리곤 내 포인트 개수 카운트
벡터 → 분석 도구 → 폴리곤을 포함하는 포인트 개수 카운트 경로가서 실행하면 됩니다. 격자 레이어와 포인트를 설정하면 QGIS 알아서 격자 내 포인트 개수가 얼마나 있는지 계산해 줍니다. 격자 내 포인트 개수가 많다는 것은 그 구역에 전기차 입지에 더 좋은 영향을 줄 수 있는 변수들을 포함하고 있다는 것입니다. 그래서 개수가 많을수록 순위가 올라가겠죠??? 모든 포인트 데이터들은 격자와 폴리곤 내 포인트 개수 카운트 결합을 합니다.
**위치에 따른 속성 결합
벡터 → 데이터 관리 도구 → 위치에 따른 속성 결합 경로로가서 실행하면 됩니다. 위치에 따른 속성 결합은 격자와 교통 선의 데이터의 위치를 기준으로 결합해 줍니다. 격자 내(위치)에 교통선이 존재한다면 새로운 변수가 생성될 것입니다.
**단순 데이터 결합
레이어 속성 → 다른 레이어와 속성 결합 경로로 가서 실행하시면 됩니다. 단순 데이터 결합은 파이썬의 left join, merge로 생각하셔도 무방합니다. 공통된 변수가 있다면 그 변수를 기준으로 데이터 프레임을 결합해 줍니다. 격자 내 경제인구 데이터와 위도, 경도를 gid 변수를 기준으로 결합해 주면 됩니다.
**결합 데이터
변수는 순서대로 gid, 건물, 건물2, 건물3, 도서관, 변압기, 전기안전관리자, 전기차, 충전소, ID, 교통선, 경제인구, 경도, 위도입니다.
가중치를 이용한 순위 선정
from sklearn.preprocessing import StandardScaler
scaler=StandardScaler()
rank_columns=['건물#','건물2', '건물3', '도서관', '전기차',
'민원행정기관', '경제인구_val']
##가중치 계산
number=[2,3,4,2,2,2,2]
##표준화
norm=sort_df.copy()
norm.fillna(0, inplace=True)
norm.set_index('gid', inplace=True)
norm[rank_columns]=scaler.fit_transform(norm.loc[:,rank_columns])
norm.reset_index(inplace=True)
## 총점계산
df=norm.copy()
for i in range(0, len(rank_columns)):
name=rank_columns[i]
df[name]=df[name]*number[i]
df.set_index(['gid','격자_위경도_79_lon','격자_위경도_79_lat'], inplace=True)
df['sum']=df.sum((3-2))
df['rank']=df['sum'].rank(method='dense', ascending=False).astype(int)
end____=df.sort_values(by='rank')
end____.reset_index(inplace=True)
end____.to_csv('시각화 자료_최종.csv')
전기차 입지 선정에 더 영향을 줄 것 같은 요인에 더 높은 가중치를 줘서 계산합니다. 표준화를 하는 이유는 변수들 값들의 스케일이 다르기 때문이에요.
최종 결과물
위에서 만든 순위 변수를 통해 단계를 구분해 줍니다. 그러면 위의 그림처럼 괜찮은 결과물이 나오네요. 전기차 입지 선정 순위 90 정도 까지 라벨을 표시했습니다. 위의 라벨에 표시된 것처럼 우선순위를 기준으로 전기차를 설치하면 좋을 것 같습니다. 또한 순위가 높을수록 전기차 충전소 입지가 좋다는 뜻입니다. 예를 들어 57위 구역의 격자입니다. 저 격자 내 구역에 57번째로 전기차 충전소를 설치하면 좋을 것 같다고 분석 결과가 나왔네요. 이렇게 전기차 충전소 입지에 대해서 분석해 봤습니다.
'공간 분석 > 전기차 입지 분석 방법' 카테고리의 다른 글
전기차 입지 선정 A (0) | 2022.11.17 |
---|