import pandas as pd
df = pd.read_csv('C:\\Users\\user\\Desktop\\티스토리데이터\\수원도시공사_실내공기질 측정 정보_20201211.csv', encoding = 'euc-kr')
df.head(3)
주차장명 | 주소 | 규모(㎡) | 미세먼지(㎍/㎡) | 이산화탄소(ppm) | 포름알데히드(㎍/㎡) | 일산화탄소(ppm) | 오존(ppm) | 측정결과 | 데이터기준일 | |
0 | 교동공영주차장 | 팔달구 향교로 140(교동) | 9165.68 | 49.8 | 513.0 | 3.838 | 4.00 | NaN | 양호 | 2020/12/11 |
1 | 권선지하공영주차장 | 권선구 세지로 82번길 15-3(권선동) | 2073.96 | 33.0 | 476.5 | 2.556 | 3.60 | NaN | 양호 | 2020/12/11 |
2 | 매봉공영주차장 | 영통구 동탄원천로 1109번길 61(매탄동) | 4682.43 | 40.5 | 460.0 | 6.647 | 3.10 | NaN | 양호 | 2020/12/11 |
데이터 출처 :
https://www.data.go.kr/data/15025602/fileData.do
수원도시공사_실내공기질 측정 정보_20201211
수원도시공사 실내공기질 측정 정보 (주차장명, 주소, 규모, 미세먼지, 이산화탄소, 포름알데히드, 일산화탄소, 오존) 데이터를 제공합니다.
www.data.go.kr
1. columns에 리스트 넣기
df.columns = ['a', 'b', 'c', 'd', 'e', 'f',
'g', 'h', 'i', 'j' ]
df.head(3)
a | b | c | d | e | f | g | h | i | j | |
0 | 교동공영주차장 | 팔달구 향교로 140(교동) | 9165.68 | 49.8 | 513.0 | 3.838 | 4.0 | NaN | 양호 | 2020/12/11 |
1 | 권선지하공영주차장 | 권선구 세지로 82번길 15-3(권선동) | 2073.96 | 33.0 | 476.5 | 2.556 | 3.6 | NaN | 양호 | 2020/12/11 |
2 | 매봉공영주차장 | 영통구 동탄원천로 1109번길 61(매탄동) | 4682.43 | 40.5 | 460.0 | 6.647 | 3.1 | NaN | 양호 | 2020/12/11 |
컬럼명이 알파벳으로 바뀜
단. 이경우 입력되는 리스트의 길이가 원데이터프레임의 길이와 일치 하지 않을시 에러발생
2. pandas의 rename 활용
원하는 컬럼만 이름 변경가능
df.rename(columns = {'c':'C','h':'H'}, inplace =True)
df.head(1)
a | b | C | d | e | f | g | H | i | j | |
0 | 교동공영주차장 | 팔달구 향교로 140(교동) | 9165.68 | 49.8 | 513.0 | 3.838 | 4.0 | NaN | 양호 | 2020/12/11 |
c와 h만 대문자로 변환
df.rename({'a':'A','b':'B','e':'E' }, axis = 1, inplace =True)
df.head(1)
A |
B | C | d | E | f | g | H | i | j | |
0 | 교동공영주차장 | 팔달구 향교로 140(교동) | 9165.68 | 49.8 | 513.0 | 3.838 | 4.0 | NaN | 양호 | 2020/12/11 |
axis를 활용해도 가능
이 형식을 포문을 활용해서 간단하게 모두 대문자로 바꿀 수 있음
for col in df.columns:
df.rename({col:col.upper()}, axis = 1, inplace =True)
df.head(1)
A | B | C | d | E | f | g | H | i | j | |
0 | 교동공영주차장 | 팔달구 향교로 140(교동) | 9165.68 | 49.8 | 513.0 | 3.838 | 4.0 | NaN | 양호 | 2020/12/11 |
rename(axis) 를 활용한 방법은 인덱스에서도 동일적용가능
A 컬럼을 인덱스로 설정후 원하는 인덱스만 이름바꾸기
df.set_index('A', drop = True, inplace =True)
df.rename({'교동공영주차장':'교동'}, inplace = True )
df.head()
B | C | D | E | F | G | H | I | J | |
A | |||||||||
교동 | 팔달구 향교로 140(교동) | 9165.68 | 49.8 | 513.0 | 3.838 | 4.00 | NaN | 양호 | 2020/12/11 |
권선지하공영주차장 | 권선구 세지로 82번길 15-3(권선동) | 2073.96 | 33.0 | 476.5 | 2.556 | 3.60 | NaN | 양호 | 2020/12/11 |
매봉공영주차장 | 영통구 동탄원천로 1109번길 61(매탄동) | 4682.43 | 40.5 | 460.0 | 6.647 | 3.10 | NaN | 양호 | 2020/12/11 |
영통공영주차장 | 영통구 봉영로 1598(영통동) | 10974.16 | 54.4 | 498.7 | 3.639 | 4.97 | NaN | 양호 | 2020/12/11 |
영화동공영주차장 | 장안구 수성로 382번길 24(영화동) | 5365.87 | 41.5 | 473.0 | 6.796 | 2.90 | NaN | 양호 | 2020/12/11 |
for idx in df.index:
df.rename({idx:idx.replace('공영주차장','')}, inplace = True )
df.head()
B |
C | D | E | F | G | H | I | J | |
A | |||||||||
교동 | 팔달구 향교로 140(교동) | 9165.68 | 49.8 | 513.0 | 3.838 | 4.00 | NaN | 양호 | 2020/12/11 |
권선지하 | 권선구 세지로 82번길 15-3(권선동) | 2073.96 | 33.0 | 476.5 | 2.556 | 3.60 | NaN | 양호 | 2020/12/11 |
매봉 | 영통구 동탄원천로 1109번길 61(매탄동) | 4682.43 | 40.5 | 460.0 | 6.647 | 3.10 | NaN | 양호 | 2020/12/11 |
영통 | 영통구 봉영로 1598(영통동) | 10974.16 | 54.4 | 498.7 | 3.639 | 4.97 | NaN | 양호 | 2020/12/11 |
영화동 | 장안구 수성로 382번길 24(영화동) | 5365.87 | 41.5 | 473.0 | 6.796 | 2.90 | NaN | 양호 | 2020/12/11 |
인덱스에서 공영주차장이라는 말을 제거하고 인덱스를 생성할 수 있다
'pandas' 카테고리의 다른 글
[ pandas ] to_datetime 시간데이터 다루기 기본 (0) | 2022.02.14 |
---|---|
[pandas] 결측값처리 (0) | 2021.12.02 |
[pandas] os모듈을 활용하여 원하는 여러 파일들 가져오기 (0) | 2021.12.01 |
[ pandas ] 데이터 타입변경, 데이터 범주화 (0) | 2021.08.30 |
[ pandas ] 시리즈 Series (1) | 2021.08.20 |