[파이썬][Numpy] 데이터 그룹화 및 집계 예제
Numpy를 사용하여 데이터를 그룹화하고 집계하는 예제를 제공하겠습니다. 데이터 그룹화는 데이터를 특정 조건에 따라 그룹으로 나누는 작업이며, 집계는 그룹 내에서 통계적인 연산을 수행하는 작업입니다.
import numpy as np
# 배열 생성 예제
data = np.array([[1, 'A', 10],
[2, 'B', 20],
[1, 'A', 15],
[2, 'B', 25],
[3, 'C', 30]])
# 데이터 그룹화 및 집계
grouped_data = {}
# 첫 번째 열을 기준으로 그룹화
for row in data:
key = row[0]
if key in grouped_data:
grouped_data[key].append(row[2])
else:
grouped_data[key] = [row[2]]
# 각 그룹의 평균 계산
grouped_mean = {key: np.mean(values) for key, values in grouped_data.items()}
# 각 그룹의 합계 계산
grouped_sum = {key: np.sum(values) for key, values in grouped_data.items()}
print("데이터 그룹화 결과:")
print(grouped_data)
print("\n각 그룹의 평균:")
print(grouped_mean)
print("\n각 그룹의 합계:")
print(grouped_sum)
위의 코드에서는 다음과 같은 작업을 수행합니다:
-
data
배열은 다양한 열을 가진 데이터를 나타냅니다. 이 데이터를 첫 번째 열을 기준으로 그룹화하고 집계합니다. -
grouped_data
딕셔너리를 사용하여 데이터를 그룹화하고, 각 그룹의 값을 리스트에 추가합니다. -
grouped_mean
딕셔너리를 사용하여 각 그룹의 평균을 계산합니다. -
grouped_sum
딕셔너리를 사용하여 각 그룹의 합계를 계산합니다.
실행 결과는 다음과 같을 것입니다:
데이터 그룹화 결과:
{1: [10, 15], 2: [20, 25], 3: [30]}
각 그룹의 평균:
{1: 12.5, 2: 22.5, 3: 30.0}
각 그룹의 합계:
{1: 25, 2: 45, 3: 30}
이를 통해 Numpy를 사용하여 데이터를 그룹화하고 집계하는 방법을 이해할 수 있습니다. 데이터 그룹화와 집계는 데이터 분석에서 중요한 단계 중 하나입니다.