파이썬(Python)&판다스(Pandas)&Polars

[Python] 변수명을 for문으로 할당하기 - globals()

송채채 2023. 11. 21. 18:44

 

전역변수를 활용하면 가능하다.

예를 들어, 시도명 또는 시도코드마다 데이터 프레임을 만들고 싶을 때 아래와 같은 코드를 사용할 수 있음

  • global()[변수명]
sido_code_list = {
    '11': '서울',
    '51': '강원',
    '41': '경기',
    '48': '경남',
    '47': '경북',
    '29': '광주',
    '27': '대구',
    '30': '대전',
    '26': '부산',
    '36': '세종',
    '31': '울산',
    '28': '인천',
    '46': '전남',
    '45': '전북',
    '50': '제주',
    '44': '충남',
    '43': '충북'
}

for code, sido in sido_code_list.items():
    # 동적으로 변수명 생성
    df_name = f"df_{code}" #df_11, df_51...
    #pandas로 데이터프레임 생성
    globals()[df_name] = pd.DataFrame() #데이터프레임으로 df_11, df_51...가 생성됨 
	# 데이터를 넣었다면, 행수를 같이 출력함
    print(f"{sido}의 행 수는 {globals()[df_name].shape[0]}입니다.") #서울의 행 수는 728036입니다.

 

 

반응형