본문 바로가기
python

Python Pandas 자료구조 DataFrame 알아보기

by WeRun 2022. 8. 17.

Pandas의 데이터 유형에는 1차원 데이터인 Series와 2차원 데이터인 DataFrame이 있습니다.

이번 포스팅에서는 DataFrame를 만드는 방법에 대해서 알아 보겠습니다.

Series 관련해서는 아래 포스팅에서 확인해주세요~

 

Python Pandas 자료구조 Series 알아보기

Pandas의 데이터 유형에는 1차원 데이터인 Series와 2차원 데이터인 DataFrame이 있습니다. 이번 포스팅에서는 Series를 만드는 방법에 대해서 알아 보겠습니다. class pandas.Series(data = None, index = None,..

werun.tistory.com

 

 

Class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=None)

Parameters:

data: ndarray, iterable, dict, or DataFrame
index: array-like or index
columns: array-like or index
dtype: dtype, default None
copy: bool or None, default False

 

1) data

ndarray, iterabel, dictionary 또는 DataFrame을 데이터로 가질 수 있습니다.

dictionary 타입의 경우 값으로 Series, arrays, constancts, dataclass 또는 list-like objects를 가질 수 있습니다.

이 때, column 값은 순서는 작성 순서에 따라 결정되며, index가 정의된 dictionary 라면 index에 따라 순서대로 나열됩니다.

dictionary 타입 데이터 사용
Series를 이용한 dictionary 타입 데이터 사용
ndarray 타입 데이터 사용

2) index

index명을 지정해주지 않는다면 0 ~ n 값이 순차적으로 입력됩니다.

인덱스 지정 전(좌), 인덱스 지정 후(우)

3) columns

Column명을 지정해주지 않는다면 0 ~ n 값이 순차적으로 입력됩니다.

Column명 지정 안하는 경우 0~n 값 순차적으로 입력
dictionary key값이 입력 된 상태에서 columns을 입력해준 경우 오류화면(좌), 해결방법(우)

4) dtype

DataFrame를 생성할 때 데이터 타입을 결정해 줄 수 있습니다. 아무것도 입력하지 않는다면 DataFrame 생성 시 데이터를 확인하고 자동으로 타입을 정해줍니다.

아무 타입도 지정해 주지 않을 경우 데이터에 맞춰서 자동으로 타입을 정해줍니다.
int8로 지정해주는 경우 float형인 1.0 -> 1로 변경되고 값의 타입은 int8로 확인됩니다.

5) copy

DataFrame을 만들때 원본을 카피해서 사용할지 아니면 원본 그대로를 사용할 지 결정합니다.

False일 경우 원본을 카피하지 않고 그대로 쓰기 때문에 DataFrame의 (0,0)번째 값을 1에서 100으로 변경하는 경우 원본 또한 100으로 변경된 것을 볼 수 있습니다.

ndarray 타입을 제외하고 copy 파라미터의 값이 True/False 상관없이 False 적용
ndarray 타입 데이터의 경우 copy가 True이면 원본데이터는 변하지 않습니다.

끝~