pandas 속성, 메소드

Aqua5·2025년 6월 27일

개념 정리

목록 보기
3/13

속성

Series와 DF 공통 속성

속성명Series 반환값 타입DataFrame 반환값 타입설명
shapetupletuple데이터의 형태
ndimintint차원 수
axeslistlist축 정보
Tpandas.Seriespandas.DataFrame전치(Transpose)
valuesnumpy.ndarray (1차원)numpy.ndarray (2차원)실제 데이터(numpy array)
dtypenumpy.dtypenumpy.dtype데이터의 dtype
sizeintint전체 원소 개수
emptyboolbool비어 있는지 여부
indexpandas.Indexpandas.Index행 인덱스
hasnansboolboolNaN 포함 여부
attrsdictdict사용자 정의 메타데이터(실험적)
flagspandas.core.flags.Flagspandas.core.flags.Flagspandas 객체의 플래그 정보
nbytesintint데이터가 차지하는 바이트 수

DF만의 속성

속성명반환값 타입설명
dtypespandas.Series각 열의 데이터 타입
columnspandas.Index열 인덱스(컬럼명)
stylepandas.io.formats.style.Styler시각화 스타일링 객체

Series만의 속성

속성명반환값 타입설명
nameobject시리즈의 이름
arraypandas.api.extensions.ExtensionArray내부 데이터의 ExtensionArray
is_uniquebool모든 값이 유일한지 여부
is_monotonic_increasingbool값이 오름차순 단조 증가인지 여부
is_monotonic_decreasingbool값이 내림차순 단조 감소인지 여부
realpandas.Series실수부(복소수일 때)
imagpandas.Series허수부(복소수일 때)
strpandas.core.strings.accessor.StringMethods문자열 메소드 접근자
dtpandas.core.indexes.accessors.DatetimeProperties날짜/시간 메소드 접근자
catpandas.core.arrays.categorical.CategoricalAccessor범주형 메소드 접근자

str, dt, cat 속성은 해당 Series의 dtype이 각각 문자열, datetime, category일 때만 사용 가능


메소드

Series와 DF 공통 메소드

메소드명Series 반환값 타입DataFrame 반환값 타입설명
head(), tail()pandas.Seriespandas.DataFrame앞/뒤 일부 데이터 반환
copy()pandas.Seriespandas.DataFrame객체 복사
describe()pandas.Seriespandas.DataFrame요약 통계량 반환
count()intpandas.Series결측값 제외 개수
min(), max(), sum()scalarpandas.Series최소/최대/합계
mean(), median(), std(), var()floatpandas.Series평균/중앙값/표준편차/분산
mode()pandas.Seriespandas.Series최빈값
unique()numpy.ndarraynumpy.ndarray고유값 배열 (DataFrame은 특정 열에서만)
nunique()intpandas.Series고유값 개수
sort_values()pandas.Seriespandas.DataFrame값 기준 정렬
sort_index()pandas.Seriespandas.DataFrame인덱스 기준 정렬
isnull(), isna()pandas.Seriespandas.DataFrame결측값 여부 (True/False)
notnull(), notna()pandas.Seriespandas.DataFrame결측값이 아닌지 여부
fillna()pandas.Seriespandas.DataFrame결측값 채우기
dropna()pandas.Seriespandas.DataFrame결측값 제거
astype()pandas.Seriespandas.DataFrame데이터 타입 변환
apply()pandas.Seriespandas.DataFrame함수 적용
to_numpy()numpy.ndarraynumpy.ndarraynumpy 배열로 변환
sample()pandas.Seriespandas.DataFrame임의 샘플 추출
equals()boolbool두 객체가 동일한지 비교
idxmin(), idxmax()object/int/labelpandas.Series최소/최대값 위치 인덱스
drop_duplicates()pandas.Seriespandas.DataFrame중복값 제거
duplicated()pandas.Seriespandas.DataFrame중복여부(Boolean) 반환
memory_usage()intpandas.Series메모리 사용량
abs()pandas.Seriespandas.DataFrame절댓값
add(), sub(), mul(), div(), pow()pandas.Seriespandas.DataFrame산술 연산
clip()pandas.Seriespandas.DataFrame값 범위 제한
between()pandas.Seriespandas.DataFrame구간 포함 여부
replace()pandas.Seriespandas.DataFrame값 치환
where(), mask()pandas.Seriespandas.DataFrame조건에 따라 값 선택/변경
combine_first()pandas.Seriespandas.DataFrame결측값을 다른 객체로 채움
interpolate()pandas.Seriespandas.DataFrame보간(결측값 채우기)
quantile()floatpandas.Series분위수
cumsum(), cumprod(), cummax(), cummin()pandas.Seriespandas.DataFrame누적 합/곱/최대/최소
pct_change()pandas.Seriespandas.DataFrame퍼센트 변화율
rank()pandas.Seriespandas.DataFrame순위 반환
round()pandas.Seriespandas.DataFrame반올림
to_frame()pandas.DataFrame-Series → DataFrame 변환

DF만의 메소드

메소드명반환값 타입설명
groupby()DataFrameGroupBy그룹별 연산 객체 반환
pivot(), pivot_table()pandas.DataFrame피벗 테이블 생성
melt()pandas.DataFramewide → long 형태 변환
merge()pandas.DataFrame다른 DataFrame과 병합
join()pandas.DataFrame인덱스/열 기준 결합
concat()pandas.DataFrame여러 DataFrame 연결
set_index()pandas.DataFrame인덱스 설정
reset_index()pandas.DataFrame인덱스 초기화
transpose(), Tpandas.DataFrame전치(행/열 교환)
add_prefix()pandas.DataFrame컬럼명 접두사 추가
add_suffix()pandas.DataFrame컬럼명 접미사 추가
select_dtypes()pandas.DataFramedtype별 열 선택
info()None데이터프레임 요약 정보 출력
corr(), cov()pandas.DataFrame상관계수/공분산 반환
plot()matplotlib 객체그래프 그리기
value_counts()pandas.Series값 개수 집계 (특정 열에서 사용)
iterrows(), itertuples(), iteritems()generator행/열 반복자 반환
explode()pandas.DataFrame리스트/배열 컬럼을 행으로 분리
filter()pandas.DataFrame조건에 맞는 행/열 선택
assign()pandas.DataFrame새 컬럼 추가
drop()pandas.DataFrame행/열 삭제
drop_duplicates()pandas.DataFrame중복 행 제거
duplicated()pandas.Series중복 행 여부(Boolean) 반환
sort_values()pandas.DataFrame값 기준 정렬
sort_index()pandas.DataFrame인덱스 기준 정렬
isnull(), notnull()pandas.DataFrame결측값 여부(Boolean) 반환
fillna(), dropna()pandas.DataFrame결측값 채우기/제거
astype()pandas.DataFrame데이터 타입 변환
apply(), applymap()pandas.DataFrame함수 적용

drop_columns는 공식 메소드가 아니며, drop 사용을 권장한다.

Series만의 메소드

메소드명반환값 타입설명
map()pandas.Series함수/딕셔너리 매핑
to_frame()pandas.DataFrameSeries를 DataFrame으로 변환
append()pandas.SeriesSeries 이어붙이기 (deprecated, concat 권장)
items()generator(인덱스, 값) 튜플 반복자 반환
keys()pandas.Index인덱스 반환
get()scalar인덱스 값 반환 (없으면 기본값 반환)
strStringMethods문자열 전용 메소드 접근자
dtDatetimePropertiesdatetime 전용 메소드 접근자
catCategoricalAccessor범주형 전용 메소드 접근자
autocorr()float자기상관계수
factorize()tuple(라벨 배열, 고유값 배열) 반환
searchsorted()int 또는 배열정렬된 시리즈에서 값이 들어갈 위치
combine_first()pandas.Series결측값을 다른 Series로 채움
between()pandas.Series구간 포함 여부(Boolean) 반환
value_counts()pandas.Series값 개수 집계
idxmin(), idxmax()label최소/최대값 위치 인덱스
add(), sub(), mul(), div(), pow()pandas.Series산술 연산
abs()pandas.Series절댓값
clip()pandas.Series값 범위 제한
round()pandas.Series반올림
cumsum(), cumprod(), cummax(), cummin()pandas.Series누적 합/곱/최대/최소
pct_change()pandas.Series퍼센트 변화율
rank()pandas.Series순위 반환
interpolate()pandas.Series보간(결측값 채우기)

특수 메소드 속성 및 메소드

Series와 DF 공통 특수 속성

속성명Series 반환값 타입DataFrame 반환값 타입설명
ilocpandas.core.indexing._iLocIndexerpandas.core.indexing._iLocIndexer정수 위치 기반 인덱싱 인덱서
locpandas.core.indexing._LocIndexerpandas.core.indexing._LocIndexer라벨 기반 인덱싱 인덱서
atpandas.core.indexing._AtIndexerpandas.core.indexing._AtIndexer라벨 기반 스칼라 값 접근자
iatpandas.core.indexing._iAtIndexerpandas.core.indexing._iAtIndexer정수 위치 기반 스칼라 값 접근자
axeslistlist축 정보 리스트 (index, columns 등)
flagspandas.core.flags.Flagspandas.core.flags.Flags객체의 플래그 정보
emptyboolbool비어있는지 여부
attrsdictdict사용자 정의 메타데이터
Tpandas.Seriespandas.DataFrame전치 (Transpose) 객체 반환

DF만의 특수 속성

속성명반환값 타입설명
stylepandas.io.formats.style.StylerDataFrame 시각화 스타일링 객체

Series만의 특수 속성

속성명반환값 타입설명
strpandas.core.strings.accessor.StringMethods문자열 메소드 접근자
dtpandas.core.indexes.accessors.DatetimeProperties날짜/시간 메소드 접근자
catpandas.core.arrays.categorical.CategoricalAccessor범주형 메소드 접근자

Series와 DF 공통 특수 메소드

메소드명Series 반환값 타입DataFrame 반환값 타입설명
__getitem__pandas.Series, scalar 등pandas.DataFrame, pandas.Series, scalar 등대괄호 연산자 [] 구현 메소드 (인덱싱, 슬라이싱 등)
__setitem__없음없음대괄호 연산자 []를 통한 값 설정 메소드
__len__intint길이 반환 메소드
__iter__iteratoriterator이터레이터 반환 메소드
__contains__boolboolin 연산자 지원 메소드
pipepandas.Seriespandas.DataFrame함수형 프로그래밍 스타일 메소드, 체인 가능
querypandas.Seriespandas.DataFrame조건식 문자열로 데이터 필터링
evalpandas.Seriespandas.DataFrame문자열 표현식을 평가하여 계산
memory_usageintpandas.Series메모리 사용량 반환
to_dictdictdict객체를 딕셔너리로 변환
to_jsonstrstrJSON 형식으로 변환
to_csvstr 또는 없음str 또는 없음CSV 파일로 저장(파일 경로 지정 시 반환값 없음)
to_excel없음없음엑셀 파일로 저장
to_sql없음없음SQL 데이터베이스에 저장
to_htmlstrstrHTML 테이블로 변환
to_clipboard없음없음클립보드에 복사
to_stringstrstr문자열로 변환
info없음없음DataFrame 요약 정보 출력
plotmatplotlib 객체matplotlib 객체시각화 메소드

DF만의 특수 메소드

메소드명반환값 타입설명
to_framepandas.DataFrameDataFrame으로 변환 (Series에서 주로 사용)
mergepandas.DataFrame다른 DataFrame과 병합
joinpandas.DataFrame인덱스/열 기준 결합
concatpandas.DataFrame여러 DataFrame 연결
groupbyDataFrameGroupBy그룹별 연산 객체 반환
pivotpandas.DataFrame피벗 테이블 생성
pivot_tablepandas.DataFrame피벗 테이블(집계 포함) 생성
meltpandas.DataFramewide → long 형태 변환
set_indexpandas.DataFrame인덱스 설정
reset_indexpandas.DataFrame인덱스 초기화
add_prefixpandas.DataFrame컬럼명 접두사 추가
add_suffixpandas.DataFrame컬럼명 접미사 추가
select_dtypespandas.DataFramedtype별 열 선택
corrpandas.DataFrame상관계수 반환
covpandas.DataFrame공분산 반환
explodepandas.DataFrame리스트/배열 컬럼을 행으로 분리
filterpandas.DataFrame조건에 맞는 행/열 선택
assignpandas.DataFrame새 컬럼 추가
droppandas.DataFrame행/열 삭제
drop_duplicatespandas.DataFrame중복 행 제거
duplicatedpandas.Series중복 행 여부(Boolean) 반환
sort_valuespandas.DataFrame값 기준 정렬
sort_indexpandas.DataFrame인덱스 기준 정렬
fillnapandas.DataFrame결측값 채우기
dropnapandas.DataFrame결측값 제거
astypepandas.DataFrame데이터 타입 변환
applypandas.DataFrame함수 적용
applymappandas.DataFrame전체 요소에 함수 적용
info없음DataFrame 요약 정보 출력

Series만의 특수 메소드

메소드명반환값 타입설명
to_listlistSeries를 리스트로 변환

인덱스 객체

Index 객체는 Series와 DataFrame의 행이나 열의 인덱스 값을 저장하는 객체다.

  • 불변(immutable): 한 번 생성된 Index 객체는 일반적인 방법으로 그 값을 변경할 수 없다.
  • 배열과 유사: NumPy 배열처럼 동작하며, 순서가 있고 슬라이싱 등 다양한 배열 연산이 가능하다.
  • 중복 허용
  • 집합 연산 지원: 집합 연산을 지원하여 데이터 병합(merge)이나 조인(join) 등에서 유용하게 활용할 수 있다.
  • 슬라이싱 및 검색: Index 객체를 통해 데이터의 특정 행이나 열을 빠르고 효율적으로 검색할 수 있다.
  • 이름(name) 속성: Index 객체 자체에 이름을 부여할 수 있다.
  • 다양한 타입 지원: 문자열, 정수, 날짜/시간 등 다양한 데이터 타입의 인덱스를 가질 수 있다.

0개의 댓글