Python에서 **데이터 클리닝(data cleaning)**과 **시각화(visualization)**에 사용되는 대표적인 함수와 메서드를 카테고리별로 정리해드릴게요. 주로 사용하는 라이브러리는 pandas
, numpy
, matplotlib
, seaborn
입니다.
✅ 1. 데이터 클리닝 함수 (pandas
중심)
📌 결측치(Missing Values)
함수 / 메서드 | 설명 |
---|
df.isnull() | 결측값 여부 (True/False) 반환 |
df.notnull() | 결측값이 아닌 것 확인 |
df.dropna() | 결측값이 있는 행/열 제거 |
df.fillna(value) | 결측값을 지정값으로 대체 |
df.interpolate() | 선형보간 등으로 결측값 채우기 |
df.ffill() | 결측값을 앞의 값으로 채우기 |
df.bfill() | 결측값을 뒤의 값으로 채우기 |
📌 이상치(Outliers)
함수 / 메서드 | 설명 |
---|
df.describe() | 통계 요약 (최소/최대 등 이상치 탐색에 유용) |
df['col'].quantile(q) | 분위수 기반 이상치 경계 계산 |
zscore() (from scipy ) | 표준 점수 기반 이상치 탐색 |
df.clip(lower, upper) | 하한/상한을 설정하여 값 자르기 |
np.where() | 조건 기반 값 변경 |
📌 문자열/카테고리 정리
함수 / 메서드 | 설명 |
---|
df['col'].str.strip() | 공백 제거 |
df['col'].str.lower() | 소문자 변환 |
df['col'].str.contains() | 특정 문자열 포함 여부 |
df['col'].replace() | 값 치환 |
df['col'].astype('category') | 범주형 데이터로 변환 |
📌 데이터 형 변환
함수 / 메서드 | 설명 |
---|
df.astype(type) | 열 자료형 변환 |
pd.to_numeric() | 숫자로 변환 |
pd.to_datetime() | 날짜형으로 변환 |
df.convert_dtypes() | 자동형변환 (pandas 1.0+) |
📌 중복 처리
함수 / 메서드 | 설명 |
---|
df.duplicated() | 중복 행 여부 반환 |
df.drop_duplicates() | 중복 행 제거 |
📌 기타 유용한 처리
함수 / 메서드 | 설명 |
---|
df.replace() | 값 치환 (다중 값도 가능) |
df.query('col > 5') | 조건 필터링 |
df.apply(func) | 함수 적용 |
df.map() | 시리즈에 값 매핑 |
🎨 2. 시각화 함수 (matplotlib
, seaborn
중심)
📌 기본 시각화 (matplotlib.pyplot)
함수 | 설명 |
---|
plt.plot() | 선 그래프 |
plt.scatter(x, y) | 산점도 |
plt.bar(x, y) | 막대 그래프 |
plt.hist(x) | 히스토그램 |
plt.boxplot(data) | 박스플롯 (이상치 시각화에 좋음) |
plt.pie(x) | 파이 차트 |
plt.imshow(img) | 이미지 시각화 |
plt.title() , xlabel() , ylabel() , legend() | 축/제목/범례 설정 |
📌 고급 시각화 (seaborn)
함수 | 설명 |
---|
sns.histplot(data) | 히스토그램 |
sns.boxplot(x, y, data) | 박스플롯 |
sns.violinplot(x, y) | 바이올린 플롯 |
sns.scatterplot(x, y) | 산점도 |
sns.lineplot(x, y) | 선형 그래프 |
sns.barplot(x, y) | 평균 막대그래프 |
sns.countplot(x) | 카테고리별 개수 시각화 |
sns.heatmap(df.corr()) | 상관관계 히트맵 |
sns.pairplot(df) | 다변량 산점도 행렬 |
sns.jointplot(x, y) | 산점도 + 히스토그램 |
답글 남기기