05_Pandas

06_서울교통공사_역사면적정보

chuu_travel 2025. 3. 27. 21:45
728x90
서울교통공사 역사면적정보 전처리 및 csv로 저장

 

import pandas as pd

서울교통공사_역사면적정보_20250310.csv

 

df = pd.read_csv("./data/서울교통공사_역사면적정보_20250310.csv", encoding="euc-kr")
# 위에서부터 10개의 데이터를 확인
df.head(10)

 

df.tail(10)

 

 

df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 277 entries, 0 to 276
Data columns (total 5 columns):
 #   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  
 0   연번      277 non-null    int64  
 1   호선      277 non-null    int64  
 2   역명      277 non-null    object 
 3   대합실면적   277 non-null    float64
 4   승강장면적   277 non-null    float64
dtypes: float64(2), int64(2), object(1)
memory usage: 10.9+ KB

 

 

df["역명"].unique()
array(['서울역', '시청', '종각', '종로3가', '종로5가', '동대문', '동묘앞', '신설동', '제기동',
       '청량리', '을지로입구', '을지로3가', '을지로4가', '동대문역사문화공원', '신당', '상왕십리', '왕십리',
       '한양대', '뚝섬', '성수', '건대입구', '구의', '강변', '잠실나루', '잠실', '잠실새내',
       '종합운동장', '삼성', '선릉', '역삼', '강남', '교대', '서초', '방배', '사당', '낙성대',
       '서울대입구', '봉천', '신림', '신대방', '구로디지털단지', '대림', '신도림', '문래', '영등포구청',
       '당산', '합정', '홍대입구', '신촌', '이대', '아현', '충정로', '용답', '신답', '용두',
       '도림천', '양천구청', '신정네거리', '까치산', '지축', '구파발', '연신내', '불광', '녹번',
       '홍제', '무악재', '독립문', '경복궁', '안국', '충무로', '동대입구', '약수', '금호', '옥수',
       '압구정', '신사', '잠원', '고속터미널', '남부터미널', '양재', '매봉', '도곡', '대치', '학여울',
       '대청', '일원', '수서', '가락시장', '경찰병원', '오금', '불암산', '상계', '노원', '창동',
       '쌍문', '수유', '미아', '미아사거리', '길음', '성신여대입구', '한성대입구', '혜화', '명동',
       '회현', '숙대입구', '삼각지', '신용산', '이촌', '동작', '총신대입구', '남태령', '방화',
       '개화산', '김포공항', '송정', '마곡', '발산', '우장산', '화곡', '신정', '목동', '오목교',
       '양평', '영등포시장', '신길', '여의도', '여의나루', '마포', '공덕', '애오개', '서대문',
       '광화문', '청구', '신금호', '행당', '마장', '답십리', '장한평', '군자', '아차산', '광나루',
       '천호', '강동', '길동', '굽은다리', '명일', '고덕', '상일동', '강일', '미사', '하남풍산',
       '하남시청', '하남검단산', '둔촌동', '올림픽공원', '방이', '개롱', '거여', '마천', '응암',
       '역촌', '독바위', '구산', '새절', '증산', '디지털미디어시티', '월드컵경기장', '마포구청', '망원',
       '상수', '광흥창', '대흥', '효창공원앞', '녹사평', '이태원', '한강진', '버티고개', '창신',
       '보문', '안암', '고려대', '월곡', '상월곡', '돌곶이', '석계', '태릉입구', '화랑대', '봉화산',
       '신내', '장암', '도봉산', '수락산', '마들', '중계', '하계', '공릉', '먹골', '중화', '상봉',
       '면목', '사가정', '용마산', '중곡', '어린이대공원', '자양', '청담', '강남구청', '학동', '논현',
       '반포', '내방', '이수', '남성', '숭실대입구', '상도', '장승배기', '신대방삼거리', '보라매',
       '신풍', '남구로', '가산디지털단지', '철산', '광명사거리', '천왕', '온수', '암사역사공원', '암사',
       '강동구청', '몽촌토성', '석촌', '송파', '문정', '장지', '복정', '남위례', '산성',
       '남한산성입구', '단대오거리', '신흥', '수진', '모란'], dtype=object)
#  중복을 제거한 역명 개수
len(df["역명"].unique())
241

 

df.dtypes
연번         int64
호선         int64
역명        object
대합실면적    float64
승강장면적    float64
dtype: object

 

 

df.describe()

 

 

df.count()
연번       277
호선       277
역명       277
대합실면적    277
승강장면적    277
dtype: int64

 

df["대합실면적"].mean()
5675.24714801444

 

df["승강장면적"].mean()
2337.263976714801

 

df.columns
Index(['연번', '호선', '역명', '대합실면적', '승강장면적'], dtype='object')

 

# 컬럼명 변경
df.columns = ['연번', '노선명', '역명', '대합실면적', '승강장면적']
df.head()

 

# csv파일로 저장
df.to_csv('subway-extent.csv', index=False)

subway-extent.csv