Series 연산

반응형
    반응형

    Series 로도 연산이 가능합니다. Series는 인덱스를 정할 수 있었기 때문에 그 부분을 생각하고 ndarray에서 하던식으로 하면 연산이 잘 됩니다. 다만 주의할점은 짝이 맞아야 된다는 것인데 짝이 맞지 않으면 NaN으로 출력하게 됩니다.

     

    import numpy as np
    import pandas as pd
    s1 = pd.Series([1,2,3,4],['a','b','c','d'])
    s2 = pd.Series([4,2,3,1],['d','b','c','a'])
    s1+s2

    s2의 value 값의 순서를 바꿔도 그에 대응하는 인덱스값을 설정을 해놓으면 Series에서는 인덱스에 대응하는 value 값으로 연산을 하게 됩니다. 

     

    가능한 연산을 살펴보겠습니다.

    먼저 사칙연산 가능합니다.

    print(s1-s2)
    print(s1*s2)
    print(s1/s2)

     

    스칼라연산 가능합니다.

    s1**2

     

    Series로 지수연산도 가능합니다.

    s1**s2

     

    인덱스 짝이 맞지 않을 경우

    인덱스가 맞지 않으면 해당 인덱스에서는 NaN 값으로 나타납니다.

    s1['e']=5
    s2['f']=6
    print(s1)
    print(s2)

     

    s1과 s2에 각각 다른 인덱스로 값을 추가하고 계산을 해보겠습니다.

    s1+s2

    보시는 것처럼 짝이 안 맞으면 NaN으로 표현되고 NaN으로 인해 float64로 dtype이 변하는 것을 볼 수 있습니다.

     


    Series는 생성하기보다 보통 어디선가 데이터로 가져올 때가 많습니다. 그래서 인덱스도 제각각이고 NaN으로 처리된 데이터도 있기 때문에 NaN를 어떻게 없앨것인지 인덱스는 어떻게 통일해야 연산을 잘 할 수 있는지 생각해봐야 합니다.

    이번 포스팅에서는 연산방법만 소개하고 Series를 다룰 수 있는 실제적인 부분은 추후에 포스팅하도록 하겠습니다.

    'Python > Pandas' 카테고리의 다른 글

    [Pandas]Series 슬라이싱  (0) 2020.07.01
    [Pandas]Series drop, dropna  (0) 2020.06.28
    Series Boolean Select  (0) 2020.06.24
    [Pandas] Series 간단 분석  (0) 2020.06.16
    Pandas Series 특징  (0) 2020.06.09

    댓글

    Designed by JB FACTORY

    ....