import numpy as np
import pandas as pd
Series는 index를 기준으로 연산한다.
# <in>
s1 = pd.Series([1, 2, 3, 4],['a', 'b', 'c', 'd'])
s2 = pd.Series([6, 3, 2, 1],['d', 'c', 'b', 'a'])
print(s1)
print(s2)
# <out>
a 1
b 2
c 3
d 4
dtype: int64
d 6
c 3
b 2
a 1
dtype: int64
s1과 s2를 더하면
# <in>
s1 = pd.Series([1, 2, 3, 4],['a', 'b', 'c', 'd'])
s2 = pd.Series([6, 3, 2, 1],['d', 'c', 'b', 'a'])
s1 + s2
# <out>
a 2
b 4
c 6
d 10
dtype: int64
같은 index끼리 더 해지는 것을 확인할 수 있다.
산술연산
Series의 경우에도 scalar와의 연산은 각 원소별로 scalar와의 연산이 적용된다.
# <in>
s1 = pd.Series([1, 2, 3, 4],['a', 'b', 'c', 'd'])
s1 ** 2
# <out>
a 1
b 4
c 9
d 16
dtype: int64
Series의 원소에 모두 적용되는 것을 확인할 수 있다. (broadcasting)
index pair가 맞지 않는 경우는 어떨까?
# <in>
s1 = pd.Series([1, 2, 3, 4],['a', 'b', 'c', 'd'])
s2 = pd.Series([6, 3, 2, 1],['d', 'c', 'b', 'a'])
s1['k'] = 7
s2['e'] = 9
s1 + s2
# <out>
a 2.0
b 4.0
c 6.0
d 10.0
e NaN
k NaN
dtype: float64
해당 index 'e', 'k'에 대해서는 NaN 값을 생성하는 것을 확인할 수 있다.
'python > pandas' 카테고리의 다른 글
6. pandas DataFrame - 데이터 살펴보기 (0) | 2023.02.17 |
---|---|
5. pandas Series 슬라이싱 (0) | 2023.02.17 |
4. pandas Series - boolean selection (0) | 2023.02.17 |
2. pandas - series 함수 (0) | 2023.02.17 |
1. pandas - Series data (0) | 2023.02.17 |