본문 바로가기

코딩/부동산,주식 데이터 공부

실거래가 분석(아파트)

데이터 수집)

 - 실거래가 자료

 ㅇ 액셀파일 다운로드 > 월별 자료 파이썬 로딩

apt_21_1 = pd.read_csv("./아파트(매매)__실거래가_21년1월.csv",encoding='cp949',skiprows = 15 )
apt_21_2 = pd.read_csv("./아파트(매매)__실거래가_21년2월.csv",encoding='cp949',skiprows = 15 )
apt_21_3 = pd.read_csv("./아파트(매매)__실거래가_21년3월.csv",encoding='cp949',skiprows = 15 )
apt_21_4 = pd.read_csv("./아파트(매매)__실거래가_21년4월.csv",encoding='cp949',skiprows = 15 )
apt_21_5 = pd.read_csv("./아파트(매매)__실거래가_21년5월.csv",encoding='cp949',skiprows = 15 )
apt_21_6 = pd.read_csv("./아파트(매매)__실거래가_21년6월.csv",encoding='cp949',skiprows = 15 )

 * 올해 자료부터 과거분 데이터를 채워나갈 예정.

 

데이터 전처리)

- 간단한 파생변수 처리

apt_21_6['전용면적_평'] = apt_21_6['전용면적(㎡)'] / 3.305785
apt_21_6['거래금액(만원)'] = apt_21_6['거래금액(만원)'].str.replace(',', '').astype('int') #형 변환
apt_21_6['평당가격'] = apt_21_6['거래금액(만원)'] / apt_21_6['전용면적_평'].astype('int')

apt_21_5['전용면적_평'] = apt_21_5['전용면적(㎡)'] / 3.305785
apt_21_5['거래금액(만원)'] = apt_21_5['거래금액(만원)'].str.replace(',', '').astype('int') #형 변환
apt_21_5['평당가격'] = apt_21_5['거래금액(만원)'] / apt_21_5['전용면적_평'].astype('int')

apt_21_4['전용면적_평'] = apt_21_4['전용면적(㎡)'] / 3.305785
apt_21_4['거래금액(만원)'] = apt_21_4['거래금액(만원)'].str.replace(',', '').astype('int') #형 변환
apt_21_4['평당가격'] = apt_21_4['거래금액(만원)'] / apt_21_4['전용면적_평'].astype('int')

apt_21_3['전용면적_평'] = apt_21_3['전용면적(㎡)'] / 3.305785
apt_21_3['거래금액(만원)'] = apt_21_3['거래금액(만원)'].str.replace(',', '').astype('int') #형 변환
apt_21_3['평당가격'] = apt_21_3['거래금액(만원)'] / apt_21_3['전용면적_평'].astype('int')

apt_21_2['전용면적_평'] = apt_21_2['전용면적(㎡)'] / 3.305785
apt_21_2['거래금액(만원)'] = apt_21_2['거래금액(만원)'].str.replace(',', '').astype('int') #형 변환
apt_21_2['평당가격'] = apt_21_2['거래금액(만원)'] / apt_21_2['전용면적_평'].astype('int')

apt_21_1['전용면적_평'] = apt_21_1['전용면적(㎡)'] / 3.305785
apt_21_1['거래금액(만원)'] = apt_21_1['거래금액(만원)'].str.replace(',', '').astype('int') #형 변환
apt_21_1['평당가격'] = apt_21_1['거래금액(만원)'] / apt_21_1['전용면적_평'].astype('int')

apt_21_1_6= pd.concat([apt_21_1, apt_21_2,apt_21_3,apt_21_4,apt_21_5,apt_21_6])
apt_21_1_6.head(2)

- 마스터테이블 셋 구성

a = apt_21_1_6.groupby(['계약년월','시군구','단지명','전용면적_평','건축년도'],sort=True)['평당가격'].mean().sort_values(ascending=False)
b = apt_21_1_6.groupby(['계약년월','시군구','단지명','전용면적_평','건축년도'],sort=True)['거래금액(만원)'].mean().sort_values(ascending=False)
a = pd.DataFrame(a) 
b = pd.DataFrame(b)
c = pd.concat([a,b], axis= 1)
c.head()

데이터 분석 및 결과)

 - 21.6월 기준, 서울 3구 마용성 평균 실거래가는?

분석 코드)
# 마포구 실거래가 확인
t = tt[ (tt['시군구'].str.contains('마포구')) 
  & (tt['계약년월'] == 202106 )]
a = t.sort_values(by=['거래금액(만원)'] ,ascending= False ) 
a.head(5)

# 용산구 실거래가 확인
t = tt[ (tt['시군구'].str.contains('용산구')) 
  & (tt['계약년월'] == 202106 )]
a = t.sort_values(by=['거래금액(만원)'] ,ascending= False ) 
a.head(5)

# 성동구 실거래가 확인
t = tt[ (tt['시군구'].str.contains('성동구')) 
  & (tt['계약년월'] == 202106 )]
a = t.sort_values(by=['거래금액(만원)'] ,ascending= False ) 
a.head(5)

  ㅇ 마포구

계약년월 시군구 단지명 전용면적_ 건축년도 평당가격 거래금액(만원)
202106 서울특별시 마포구 아현동 마포래미안푸르지오4단지 34.56976 2014 6705.882 228000
202106 서울특별시 마포구 용강동 래미안마포리버웰 34.77843 2015 6470.588 220000
202106 서울특별시 마포구 신수동 신촌숲아이파크 25.68255 2019 7700 192500
202106 서울특별시 마포구 아현동 마포래미안푸르지오2단지 25.6798 2014 7360 184000
202106 서울특별시 마포구 용강동 래미안마포리버웰 25.70343 2015 7340 183500

  ㅇ 용산구

계약년월 시군구 단지명 전용면적_ 건축년도 평당가격 거래금액(만원)
202106 서울특별시 용산구 한남동 한남더힐 53.77361 2011 9811.321 520000
202106 서울특별시 용산구 이촌동 LG한강자이 61.47103 2003 7131.148 435000
202106 서울특별시 용산구 이촌동 래미안첼리투스아파트 37.51605 2015 11621.62 430000
202106 서울특별시 용산구 서빙고동 신동아 63.60063 1984 6349.206 400000
202106 서울특별시 용산구 용산동5 용산파크타워(24-1) 47.89483 2009 8255.319 388000

  ㅇ 성동구

계약년월 시군구 단지명 전용면적_ 건축년도 평당가격 거래금액(만원)
202106 서울특별시 성동구 성수동1 갤러리아 포레 73.09308 2011 8904.11 650000
202106 서울특별시 성동구 성수동1 트리마제 25.65844 2017 13300 332500
202106 서울특별시 성동구 옥수동 한남하이츠 53.5788 1982 6179.245 327500
202106 서울특별시 성동구 옥수동 옥수파크힐스101동~116동 35.05975 2016 6228.571 218000
202106 서울특별시 성동구 옥수동 옥수하이츠 34.72095 1998 6352.941 216000

유사년도(2015~2016년)을 비교해보니 위의 요소로 보았을 경우 용산>마포>성동구 순으로 보여진다.

부동산 가격이라는게 위의 요소뿐만 아니라 입지요소(한강프리미엄, 학군, 슬세권, 백화점 등), 건설사 브랜드, 아파트 층수, 아파트 구조 등으로 이루어지겠지만...

 

아직은 코딩 기반의 분석과 시스템 개발쪽에 있어 많이 부족하지만

추후에는 API연동 시스템으로 웹 구축 및 실시간으로 시스템을 만들어 보다 빨리 분석할 수 있도록 만들어볼 예정이다.

계속 띄엄띄엄하느라 늦어지지만 이번달 시스템을 구축하는 것이 목표로 잡아볼까 한다.

시스템 개발과 분석 둘다 빠르게 할 수 있는 그날까지.. 화이팅