신이 되고 싶은 갓지이

4. Python 기초 - 데이터 분석시 자주 발생하는 error의 trouble shooting 본문

Python

4. Python 기초 - 데이터 분석시 자주 발생하는 error의 trouble shooting

갓지이 2024. 1. 9. 02:18

1.  데이터 불러오기 

데이터를 불러 올 때 가장 많이 발생하는 에러는 encoding 에러인것 같다. 가장 많이 사용 하는 데이터 형태는 아무래도 .csv 일텐데 엑셀에서 저장한 csv 파일의 경우 가장 일반적인 encoding = 'utf-8'이 아닌 encoding = 'cp949'을 사용하면 정상적으로 불러와지는 경우가 있다. 

# 데이터 불러오기 
import pandas as pd
file  = './data/gamestats.csv'
df = pd.read_csv(file, encoding = 'cp949')

 

 

 

2. append() Method의 삭제

pandas 2.0.0 버전 이후부터 데이터 프레임에서 append() Method가 완전히 제거되었기 때문에 더 이상 작동하지 않는다. 이로 인해 이전에 append() Method를 참조하던 코드는 다음과 같은 오류가 발생한다.

AttributeError: 'DataFrame' object has no attribute 'append'

 

따라서 이제는 append 대신 concat을 활용해야한다.

# old syntax -> pandas v2.0에서는 error 발생
df1.append(df2)  # 데이터 프레임


# new syntax
pd.concat([df1, df2])

 

 

3.  seaborn, matplotlib에서 한글 깨짐

seaborn이나 matplotlib을 통해 그래프를 그릴때 한글로 인해 폰트가 깨지는 경우가 많다. 이때 그래프가 정상적으로 그려지기는하지 아래 사진과 같이  엄청난 빨간 에러 메세지와 함께 한글이 깨지는 것을 확인 할수 있다. 이를 해결하기 위해 데이터상에 한글이 있다면 아래 코드를 복사 붙이기를 통해 실행을 하고 그래프를 그리면 깨짐 없이 그려지는 것을 확인 할 수 있다. 

한글 깨짐 에러, 그래프

# 이미지 상에 들어있는 한글을 표시하기 위한 한글 폰트를 지정하고, 필요한 라이브러리를 불러들이는 코드
import matplotlib
from matplotlib import font_manager, rc
import platform
import matplotlib.pyplot as plt
import seaborn as sns

# 이미지 한글 표시 설정
if platform.system() == 'Windows':  # 윈도우인 경우 맑은고딕
    font_name = font_manager.FontProperties(fname="c:/Windows/Fonts/malgun.ttf").get_name()
    rc('font', family=font_name)
else:    # Mac 인 경우 애플고딕
    rc('font', family='AppleGothic')

#그래프에서 마이너스 기호가 표시되도록 하는 설정
matplotlib.rcParams['axes.unicode_minus'] = False