Coding Diary.

(파이썬) 판다스 시리즈(Pandas Series)에 대한 산술 연산 본문

Coding/Python

(파이썬) 판다스 시리즈(Pandas Series)에 대한 산술 연산

life-of-nomad 2024. 6. 18. 11:53
728x90
반응형
지난 글에서 판다스 시리즈를 만들고 요소에 액세스하고 삭제하는 방법에 대해 알아보았습니다. 이번 글에서는 판다스 시리즈의 산술 연산하는 방법에 대해 알아보겠습니다.

 

🔻(참고)판다스 시리즈🔻

 

(파이썬) 판다스(Pandas) 시리즈 만들기, .loc/.iloc 이용해서 요소들에 액세스하고 삭제하기

지난 글에서 넘파이(NumPy)에 대해 알아보았습니다. 이번 글에서는 판다스(Pandas)의 시리즈 만드는 방법, 요소에 액세스하고 삭제하는 방법에 대해 알아보겠습니다. 🔻(참고)넘파이🔻 (파이썬) N

life-of-nomad.tistory.com

  • NumPy ndarray와 마찬가지로 Pandas Series에 대해서도 요소 단위로 산술 연산을 할 수 있습니다.
  • 먼저, 과일 만으로 된 식료품 목록이 담긴 새로운 Pandas Series를 만들어보겠습니다.
fruits = pd.Series(data = [10, 6, 3], index = ['apples', 'oranges', 'bananas'])
fruits
>>> apples     10
    oranges     6
    bananas     3
    dtype: int64

1. 요소 단위의 기본 산술 연산

print(fruits + 2)
>>> apples     12
    oranges     8
    bananas     5
    dtype: int64
    
print(fruits - 2)
>>> apples     8
    oranges    4
    bananas    1
    dtype: int64
    
print(fruits * 2)
>>> apples     20
    oranges    12
    bananas     6
    dtype: int64
    
print(fruits / 2)
>>> apples     5.0
    oranges    3.0
    bananas    1.5
    dtype: float64

2. NumPy의 수학 함수로 Series 연산하기

import numpy as np

print(np.exp(fruits))
>>> apples     22026.465795
    oranges      403.428793
    bananas       20.085537
    dtype: float64

print(np.sqrt(fruits))
>>> apples     3.162278
    oranges    2.449490
    bananas    1.732051
    dtype: float64
    
print(np.power(fruits, 2))
>>> apples     100
    oranges     36
    bananas      9
    dtype: int64

3. 일부 요소에 산술 연산하기

print(fruits['bananas'] + 2)
>>> 5

print(fruits.iloc[0] - 2)
>>> 8

print(fruits[['apples', 'oranges']] * 2)
>>> apples     20
    oranges    12
    dtype: int64
    
print(fruits.loc[['apples', 'oranges']] / 2)
>>> apples     5.0
    oranges    3.0
    dtype: float64

4. 정수 요소와 문자열 요소가 있는 Series에 곱셈하기

print(groceries * 2)

>>> eggs          4
    milk     YesYes
    bread      NoNo
    dtype: object
  • 2를 곱하기 때문에 판다스는 문자열이 포함된 모든 항목의 데이터를 두 배로 만듭니다.
  • 판다스는 곱셈 연산 * 가 숫자와 문자열에 대해 모두 정의되어 있기 때문입니다.
  • 만약, 숫자에 대해 유효하지만 문자열에 대해 유효하지 않은 연산, 예를 들어 / 를 적용하면 오류가 날 것입니다.
  • 그러므로 Pandas Series에 데이터 유형이 혼합되어 있다면 모든 데이터 유형의 요소에 대해 산술 연산이 유효한지 확인해야 합니다.
728x90
반응형