본문 바로가기

Programming/python

판다스 데이터 프레임으로 데이터 표 만들고 저장하기!

728x90
반응형

데이터 프레임이란?

 

한개 이상의 시리즈를 모아 행과 열로 구분해놓은 데이터의 표라고 할 수 있다.

 


 

한번 만들고 출력까지 해보자

 

import pandas as pd

shopping_list_price = { 
    'shampoo' : 12000,
    'ramen' : 600, 
    'beer' : 2500, 
    'eggs' : 250 
}

shopping_list_price = pd.Series(shopping_list_price)

shopping_list_quantity = { 
    'shampoo' : 1,
    'ramen' : 5, 
    'beer' : 4, 
    'eggs' : 30 
}

shopping_list_quantity = pd.Series(shopping_list_quantity)

shopping_list = pd.DataFrame({
    'price': shopping_list_price,
    'quantity': shopping_list_quantity
})

print(shopping_list)

 

장볼거리의 품목과 가격을 담은 딕셔너리형 변수 shopping_list_price와 품목과 수량을 담은 shopping_list_quantity를 각각 판다스 시리즈 데이터 값으로 변환시키고 둘을 각 price와 quantity라는 이름의 컬럼(열)으로 설정해, DataFrame함수를 통해 하나로 묶었다.

 

출력 결과는 다음과 같다.

 

 

 

 


 

이 외에 딕셔너리의 벨류를 직접 인덱스의 값으로 넣어주는 것도 가능하다.

 

 

import pandas as pd

shopping_list = { 
    'name': ['shampoo', 'ramen', 'beer', 'eggs'],
    'price': ['12000', '600', '2500', '50'],
    'quantity': ['1', '5', '4', '30']
}
 
# 쇼핑 리스트를 데이터 프레임으로 변환한 후, 딕셔너리의 첫번 째 키인 name안에 있는 벨류들을 인덱스로 활용
shopping_list = pd.DataFrame(shopping_list)
shopping_list = shopping_list.set_index('name')

print(shopping_list)

 

 

출력 값:

 

 


 

마지막으로 가장 중요한 점은 이렇게 데이터 프레임으로 만든 표를 csv나 exel파일로 변환해서 저장할 수도 있다는 점이다.

 

위의 코드에서 그대로 맨 아래줄에 다음과 같은 코드를 추가해주자

 

shopping_list.to_csv('./shopping_list.csv')

 

그럼 현재 파이썬 파일이 있는 디렉터리에 csv파일이 생성된 것을 확인 할 수 있다.

 

 


 

 

만약 파이썬에서 불러오고 싶다면

 

 

shopping_list = pd.read_csv("./shopping_list.csv")
print(shopping_list)

 

 

 

 

728x90
반응형