DataHandling: pandas - DataFrame, Numpy ndarray 상호 변환.

이형래·2021년 8월 31일
2

Python

목록 보기
9/10
post-thumbnail

머신러닝을 위한 데이터 핸들링 기초

pandas 라이브러리

'권철민' 저자님의 파이썬 머신러닝 완벽가이드 책을 참고했습니다.
또한, kaggleDatasets
CCO LicenseWorld Happiness Report의 데이터를 사용하여 학습하며 작성했습니다.

아래의 글은 직접 학습하며 작성한 게시물로, 오류가 있을 수 있습니다.
고수분들께서 발견하신 오류를 알려주시면 감사하겠습니다!

DataFrame, Numpy ndarray 상호 변환

DataFramePythonList, Dict
그리고 Numpy의 ndarray등 다양한 데이터로부터 생성될 수 있다.
또한 반대로 DataFrame이 위의 타입들로 변환될 수 있다.

따라서 DataFrame과 Numpy의 ndarray 상호간의 변환은 매우 빈번하게 발생한다.

1. ndarray(Numpy) & List, Dict(python) 를 DataFrame으로 변환.

우선, DataFrame은 행과 열을 갖는 2차원 데이터이다.
따라서 2차원 이하의 데이터들만 DataFrame으로 변환될 수 있다.

1.1 - 1차원의 list, ndarray를 DataFrame으로 변환.

  • DataFramelist, ndarray와 다른점은 column name을 가지고 있다는 것이다.
    따라서 일반적으로 이 column name을 지정해 준다. (지정하지 않으면 0 1 2...로 default 설정.)

위의 예시에서는 1차원을 변환했으므로 col_name에 하나의 값만 필요하다.

1.2 - 2차원의 list, ndarray를 DataFrame으로 변환.

  • 위와 큰 차이 없으며, column name을 3개 지정해 줌.

1.3 - Dict 타입을 DataFrame으로 변환.

  • 일반적으로 DictDataFrame으로 변환시에는
    Key -> column name
    Value -> data
    으로 매핑된다.

    따라서 Key문자열, Value리스트(또는 ndarray)로 Dict를 구성한다.


2. DataFrame을 ndarray(Numpy) & List, Dict(python)로 변환.

Data HandlingDataFrame타입을 이용하더라도,
ndarray를 기본 데이터 형으로 사용하는 머신러닝 패키지에 적용하기 위해
다시 ndarray로 변환하는 경우가 많다.

2.1 - DataFrame을 ndarray로 변환.

  • values 이용.

2.2 - DataFrame을 list로 변환.

  • values로 얻은 ndarraytolist() 메서드 호출.

2.3 - DataFrame을 Dict로 변환.

  • DataFrame 객체의 to_dict() 메서드를 호출.
    인자로 'list'를 입력하면 DictValue가 list형으로 반환된다.


profile
머신러닝을 공부하고 있습니다. 특히 비전 분야에 관심이 많습니다.

0개의 댓글