데이터 프레임은 보통 DB나 엑셀, CSV에서 데이터를 불러오며 생성한다. 하지만 가끔 직접 숫자를 입력해서 데이터 프레임을 만들 일이 생긴다.

파이썬 판다스 데이터 프레임을 만드는 방법은 여러가지가 있다.

오늘은 파이썬 판다스 데이터 프레임 만들기 5가지와 그 중에서 가장 편리한 방법에 대해서 알아보겠다.

 

 

파이썬 판다스 데이터프레임 만들기

 

 

판다스 데이터프레임은 인덱스, 행(row), 열(column)로 이루어져 있다. 여기에 해당하는 데이터를 넣으면 데이터 프레임을 만들 수 있다.

 

 

1. 판다스 시리즈(Series) 자료형 이용하기

데이터프레임의 각 열은 시리즈 자료형으로 이뤄져 있다. 이를 이용해서 데이터 프레임을 쉽게 만들 수 있다.

 

import pandas as pd

a = pd.Series([1,2,3,4,5], name='a')
pd.DataFrame(a)

 


하지만, 2개 이상의 칼럼을 넣기가 조금 까다롭다.

 

import pandas as pd

a = pd.Series([1,2,3,4,5], name='a')
b = pd.Series([1,2,3,4,5], name='b')

pd.DataFrame([a, b])

 

 

Series를 이용해서 데이터 프레임 만들기

 


위와 같이 실행하면 기대와 다르게 행열이 뒤집어진다. 불편하지만 Transpose를 하면 원하는 결과를 얻을 수 있다. 혹은 df['b'] = b와 같은 형태로 칼럼을 지정해 주는 것도 좋다.

 

2. 리스트 자료형으로 만들기

리스트 자료형으로 데이터를 넣어서, 데이터프레임을 만들 수 있다. 리스트 안에 각 행을 리스트 자료형으로 넣으면 된다.

 

인덱스와 칼럼명을 지정하지 않으면 알아서 생성된다. 혹은 아래와 같이 직접 입력해도 된다.

 


df = pd.DataFrame([[1, 2], [4, 5], [7, 8]],
                  index=[7, 8, 9],
                  columns=['a', 'b'])

 

 

3. numpy array 이용하기

넘파이 ndarray 자료형도 쉽게 판다스 데이터프레임을 바꿀 수 있다. 위의 리스트 자료형을 변형할 때랑 순서나 위치는 동일하다.

 


import numpy as np

temp = np.array([[1, 2], [3, 4]])
pd.DataFrame(temp, columns=['a', 'b'])

 

 

4. 딕셔너리 자료형으로 만들기

필자가 가장 추천하는 방법이다. 가장 직관적이고 이해하기 쉽니다. 칼럼명은 키, 데이터는 값이 된다. 값은 리스트 자료형으로 넣으면 된다.

 


pd.DataFrame({'a':[1,2,3,4,5],
              'b':[1,2,3,4,5]})

 

 

5. 멀티 인덱스 데이터 프레임 만들기

인덱스를 리스트 자료형으로 여러 개 입력하면 된다. 앞에서부터 인덱스가 생성된다. 아래의 예시를 참조하면 이해하기 쉬울 것이다.

 


pd.DataFrame({'a': [250, 150, 100, 150, 300, 220],
              'b': [100, 250, 300, 200, 175, 225]},
             index=[['a', 'a', 'a', 'b', 'b', 'c'],
                    ['1', '2', '3', '1', '2', '3']])

 

 

판다스 데이터프레임 멀티인덱스

 

 

오늘은 파이썬 판다스 데이터 프레임 만들기 5가지에 대해 알아보았다. 필자는 딕셔너리 자료형을 이용해서 만드는 방법을 가장 추천한다. 직관적이고 편리하기 때문이다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기