본문 바로가기
프로그래밍/파이썬(Python)

Python 축(axis)

by comflex 2025. 3. 28.
728x90
반응형

Python에서 axis란?

Python의 axis 개념은 주로 NumPypandas 같은 라이브러리에서 다차원 배열을 다룰 때 중요하게 사용됩니다. 데이터 분석과 머신러닝을 할 때, axis를 올바르게 이해하면 연산을 보다 효율적으로 수행할 수 있습니다.


1. axis(축)의 개념

axis는 다차원 배열에서 연산을 수행할 방향을 결정하는 기준입니다.

  • axis=0: 행을 따라 연산 (세로 방향)
  • axis=1: 열을 따라 연산 (가로 방향)

이를 더 쉽게 이해하기 위해, 2차원 배열(행렬)을 예로 들어 보겠습니다.

import numpy as np

# 3x3 행렬 생성
arr = np.array([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9]])

print(arr)

출력 결과:

[[1 2 3]
 [4 5 6]
 [7 8 9]]

이제 axis=0axis=1을 기준으로 np.sum()을 적용해 보겠습니다.

# axis=0 (세로 방향)로 합계 계산
print(np.sum(arr, axis=0))  # [12 15 18]

# axis=1 (가로 방향)로 합계 계산
print(np.sum(arr, axis=1))  # [ 6 15 24]
  • axis=0 → 열 단위로 더하기 (세로 방향)
  • axis=1 → 행 단위로 더하기 (가로 방향)

반응형
728x90

2. axis의 다양한 활용 예제

2.1. 평균값 계산

print(np.mean(arr, axis=0))  # 열별 평균값
print(np.mean(arr, axis=1))  # 행별 평균값

2.2. 최대/최소 값 구하기

print(np.max(arr, axis=0))  # 각 열에서 최대값
print(np.min(arr, axis=1))  # 각 행에서 최소값

2.3. pandas DataFrame에서 axis 적용

import pandas as pd

df = pd.DataFrame(arr, columns=['A', 'B', 'C'])
print(df.sum(axis=0))  # 각 열의 합
print(df.sum(axis=1))  # 각 행의 합

3. axis를 활용할 때 주의할 점

  • axis=0행을 따라 연산하지만, 실제 연산 결과는 열 기준으로 반환됩니다.
  • axis=1열을 따라 연산하지만, 결과는 행 기준으로 반환됩니다.

즉, axis를 기준으로 계산할 때 결과가 어떤 차원으로 반환될지 항상 확인하는 것이 중요합니다.


4. 결론

Python에서 axis 개념을 이해하면 다차원 데이터를 다룰 때 훨씬 직관적으로 연산을 수행할 수 있습니다. NumPy와 pandas에서 axis=0세로 방향(열), axis=1가로 방향(행)이라는 점을 기억해 두세요!

728x90
반응형