상세 컨텐츠

본문 제목

공공데이터포털 출력결과 국문 영문 필드명 교체하기

4차

by 木隱 2020. 2. 29. 16:10

본문

공공데이터포털을 사용하다보면,

요청변수와 출력결과의 항목명이 국문과 영문으로 되어 있다. 

데이터파일이던 API를 이용하던 데이터세트에는 영문으로 표기되지만, 

그냥봐서는 무슨말인지 모르기 때문에 국문으로 변환하는 절차가 필요하다.


판다스에서 칼럼명을 바꾸는 방법은 여러가지가 있다.

https://m.blog.naver.com/PostView.nhn?blogId=youji4ever&logNo=221643578115&proxyReferer=https%3A%2F%2Fwww.google.com%2F

 

[파이썬] 판다스(pandas) 팁3. 데이터프레임 컬럼명 변경하기

​기존 데이터프레임의 컬럼명을 바꾸고 싶을 때 사용하는 방식을 몇가지 알아보기로 한다.판다스 라이브러...

blog.naver.com

순서에 관계없이 1:1 매칭으로 변경하는 것이 타당하다고 생각한다.

요청변수야 그렇다 치고, 출력결과는 아주 길고 힘들다.

그래서, 이것을 긁어와서 csv 형태로 전환하여 판다스에 집어넣어 변환을 위한 코드를 한번에 만들고자 한다.


약간의 노가다는 필요하다.

우선 원하는 페이지를 열고, 출력결과 테이블을 긁어서 엑셀에 붙인후, 이것을 csv로 변형하여 저장한다.

나 같은 경우는 구글 코랩을 사용하니 이것을 구글 드라이브로 옮기는 과정이 필요하고, 

구글코랩에서는 한글파일명 인식이 안되니 영문파일명으로 바꾸는 어려운 절차 또한 필요하다. 

 

이 단계를 마치면 코드는 어렵지 않다. 

df=pd.read_csv("/gdrive/My Drive/Colab Notebooks/g2b/field.csv")
arg_all=''
for i in df.index:
  arg_add="'"+df.iloc[i,1]+"':'"+df.iloc[i,0]+"',\n"
  arg_all=arg_all+arg_add
print(arg_all)

우선 최종으로 만들어질 문장을 arg_all로 지정하고 빈 값을 준다.

for문을 돌려가며, arg_add를 생성한다.

arg_add는 맨앞에 외따옴표, i행의 1번값, 외따옴표, 세미콜론, 외따옴표, i행의 0번값, 외따옴표, 쉼표, 줄바꾸기

로 지정한다.

그다음 arg_all에 arg_add를 붙여준다.

이렇게 for문이 완료되면 결과물이 그럴싸 하게 나오고 이것으로

df=df.rename({ 
})

이후에 불필요한 라인은 삭제하여 괄호안에 넣고 사용하면 된다.

 

본 포스팅에서는 국문을 앞에, 영문을 뒤에 넣었고,  

그래서, iloc[i,1]이 iloc[i,0] 앞에 나왔다.

영문이 앞인 경우에는 바꾸면 된다. 

관련글 더보기