음수 값과 양수 값의 합을 찾는 방법을 살펴보겠습니다. 처음에는 양수 및 음수 값으로 데이터 프레임을 만듭니다. -
dataFrame = pd.DataFrame({'Place': ['Chicago', 'Denver', 'Atlanta', 'Chicago', 'Dallas', 'Denver','Dallas', 'Atlanta'], 'Temperature': [-2, 30, -5, 10, 30, -5, 20, -10]}) 그런 다음 groupby를 사용하여 Place 열을 기준으로 그룹화합니다. -
groupRes = dataFrame.groupby(dataFrame['Place'])
람다 함수를 사용하여 양수 및 음수 값을 반환합니다. 또한 양수 및 음수 값을 개별적으로 추가했습니다. −
# lambda function def plus(val): return val[val > 0].sum() def minus(val): return val[val < 0].sum()
예시
다음은 전체 코드입니다 -
import pandas as pd
# create a DataFrame with temperature in celsius
dataFrame = pd.DataFrame({'Place': ['Chicago', 'Denver', 'Atlanta', 'Chicago', 'Dallas', 'Denver','Dallas', 'Atlanta'], 'Temperature': [-2, 30, -5, 10, 30, -5, 20, -10]})
print(dataFrame)
# using groupby to group on the basis of place
groupRes = dataFrame.groupby(dataFrame['Place'])
# lambda function
def plus(val):
return val[val > 0].sum()
def minus(val):
return val[val < 0].sum()
print(groupRes['Temperature'].agg([('negTemp', minus), ('posTemp', plus)])) 출력
이것은 다음 코드를 생성합니다 -
Place Temperature 0 Chicago -2 1 Denver 30 2 Atlanta -5 3 Chicago 10 4 Dallas 30 5 Denver -5 6 Dallas 20 7 Atlanta -10 negTemp posTemp Place Atlanta -15 0 Chicago -2 10 Dallas 0 50 Denver -5 30