본문 바로가기
파이썬 (Python)/Pandas

Python Panda Seriese 로 Data 테이블화 하기 + Column 추가 및 Data 사칙 계산

by ★√★ 2021. 4. 17.

안녕하세요 이번 포스팅은 Python의 Pandas 패키지를 이용한 DataFrame 함수를 활용하는 방법 중에 Seriese를 이용한 Data 테이블하는 방법과 DataFrame화한 Data에 추가 Column 및 그 Column에 Data를 추가하는 방법, 그리고 사칙 연산까지 구현해보도록 하겠습니다.

 

pandas-활용-썸네일
Pandas-활용

 

DataFrame을 위한 Source Data 구현하기

 

: 일단 DataFrame을 구현하기 위한 Source Data를 구현해보도록 하겠습니다. 이전 포스팅에서 설명 드린 것처럼 DataFrame을 구현하기 위해서는 Dictionary로 구현되어 있는 Data Source가 필요합니다. 아래와 같이 예시 Data를 구현해보도록 하겠습니다. 

# 필요한 패키지를 먼저 선언을 합니다.
import pandas as pd
import numpy as np

# 예시 Source Data를 구현하여, pandas를 이용하여 DataFrame화 시키는 코드입니다.
data = {"names": ["Kim", "Park", "Jang", "Kim", "MC-Yoo"],
"NumberofYear" : [2014, 2015, 2017, 2018, 2019],
"Value": [90, 86, 77, 99, 75]}
df = pd.DataFrame(data, columns=["names", "NumberofYear", "Value", "remarks"],
index=["first_row", "second_row", "third_row", "forth_row", "fifth_row"])

 위의 Data Source 및 DataFrame 과 별개로 Series로 Data 테이블을 구현하는 방법에 대해서 추가적으로 설명 드리도록 하겠습니다. 아래 코드를 참조 하시면 됩니다. 

# Seriese를 이용해서 간단하게 Data Table을 만들 수 있습니다. DataFrame과 달리 Column 지정이 불가능합니다.
val = pd.Series([-1.2, -1.5, -1.7], index=['two','four','five'])

print(val)
print()

 

 위 코드를 구동을 시켜 보면 아래와 같이 출력값이 출력이 되는 걸 확인 하실 수 있습니다. 위에 설정한 Index에 맞게 관련 Data가 출력이 된 것입니다. 단점이라고 하면, Column을 지정할 수가 없습니다. 

two    -1.2
four   -1.5
five   -1.7
dtype: float64

▼ Serise에 대해서 추가적으로 공부하시고 싶은 분은 관련 내용은 구글에서 검색하시면 바로 찾으실 수 있습니다.

 

기 구현한 DataFrame Data에 Column 추가 하기

 

: 위에서 DataFrame 화한 Data에 추가적으로 Column을 추가하고 그 Column에도 Value를 추가하는 방법에 대해서 설명 드리도록 하겠습니다. 의외로 간단한 코드로 구현이 가능합니다. 일단 제가 구현할 코드는 특정 Column 에 0~4의 숫자를 Value 값으로 입력할 예정입니다. 코드는 아래와 같습니다. 

 

# 추가적인 열(test01_data)을 추가해서 np.arange()를 이용하여 순차적인 숫자를 입력이 가능합니다.
df['test01_data'] = np.arange(5)

# 추가한 열이 입력한 DataFrame을 호출하면 아래와 같이 출력이 되는 걸 확인 하실 수 있습니다.
print(df)
print()

 

 위의 코드를 구현을 해보시면 아래와 같이 출력이 되는 걸 확인 하실 수 있습니다. 비교를 위해 Column 추가 전과 추가 후에 대해서 따로 결과 값을 보여드리도록 하겠습니다. 

 

1) Column (test01_data) 추가 전

             names  NumberofYear  Value remarks
first_row      Kim          2014     90     NaN
second_row    Park          2015     86     NaN
third_row     Jang          2017     77     NaN
forth_row      Kim          2018     99     NaN
fifth_row   MC-Yoo          2019     75     NaN

 

2) Column (test01_data) 추가 후

             names  NumberofYear  Value remarks  test01_data
first_row      Kim          2014     90     NaN            0
second_row    Park          2015     86     NaN            1
third_row     Jang          2017     77     NaN            2
forth_row      Kim          2018     99     NaN            3
fifth_row   MC-Yoo          2019     75     NaN            4

 

위 코드를 공부해보시고, numpy를 이용하거나 직접 value 값도 assign 할 수 있으니, 직접 코드를 짜보시길 권장드립니다.

 

기 구현한 DataFrame Data 를 이용하여 사칙계산 하기 

 

: 그럼 이제는 기 DataFrame한 Data를 이용하여 사칙계산하는 방법에 대해서 코드를 구현해보도록 하겠습니다. 일단 사칙 계산을 할 Column 2개를 설정을 하는데, 저는 'Value' Column 와 위에 설명드린 코드를 통해서 추가한 'test01_data' Column 를 이용하여 사칙계산을 해보도록 하겠습니다. 코드는 'Value' Column 에서 'test01_data' Column 의 값을 빼는 걸로 구현하고, 그 결과 값을 'result01'이라는 Column으로 추가 하도록 하겠습니다. 설명으로는 헷갈리 수 있으니까, 아래 코드를 보시면 이해가 빠르실겁니다.

 

# 열 사칙 계산, 'Value' Column에서 'test01_data' Column을 빼주는 계산 구현
# 'result01' 이라는 Column을 새로 만들어 그 Column에 해당 결과 값을 입력
print('=============== 사칙계산 ===============')

df['result01'] = df['Value'] - df['test01_data']
print(df)
print()

 

 위 코드를 구현을 하면 아래와 같은 결과 값을 보실 수 있습니다. 위에서 설명 드린대로 결과 값을 맨 오른쪽에 추가하여 사칙계산이 구현이 되었고, 그 결과 값을 추가하였습니다. 

 

================================ 사칙계산 ===============================
             names  NumberofYear  Value remarks  test01_data  result01
first_row      Kim          2014     90     NaN            0        90
second_row    Park          2015     86     NaN            1        85
third_row     Jang          2017     77     NaN            2        75
forth_row      Kim          2018     99     NaN            3        96
fifth_row   MC-Yoo          2019     75     NaN            4        71

 

위에서 설명 드린 내용이 헷갈리실 경우에는 구글이나 유튜브 동영상을 통해서 셀프 스터디도 가능합니다. 포기하지 마시고 여러 번 보는 것보다 한 번이라도 코드 구현하는 게 최곱니다.

 

이상입니다. 지금까지 Python의 Pandas 패키지를 이용하여, Seriese를 이용한 Data 테이블하는 방법과 DataFrame화 한 Data에 추가 Column 및 그 Column에 Data를 추가하는 방법, 그리고 사칙 연산까지 구현하는 내용으로 포스팅을 작성하였습니다. 최고의 프로그래머로 되는 길에 조금이나마 도움이 되었으면 좋겠습니다. 그럼 이만 마무리 하도록 하겠습니다. 감사합니다.

 

관련 다른 글

728x90

댓글


// 내부링크를 현재창으로 열기 // Open internal links in same tab