해결된 질문
작성
·
198
0
3. 연도별로 총 범죄 건수(범죄유형의 총합)의 월평균 값을 구한 후 그 값이 가장 큰 연도를 찾아, 해당 연도의 총 범죄 건수의 월평균 값을 출력하시오. (반올림하여 정수로 출력)
문제에서
df['총범죄건수'] = df.iloc[:, 1:7].sum(axis=1)
iloc 를 활용해서 열의 합을 구할 때는 sum 괄호 안에 axis=1 이라고 작성을 하는데
result = df.groupby('연도')['총범죄건수'].sum(axis=0)/12
연도별로 그룹으로 묶어 행의 합을 구할 때는 sum 괄호 안에 axis=0 이라고 넣으면 오류가 나더라구요!
iloc 를 활용해서 합을 구할 때는 sum 괄호 안에 axis 를 작성해도 되지만, groupby 를 활용해서 합을 구할 때는 sum 괄호 안에 axis 를 작성하면 안된다고 외워야 하는 건가요??
답변 1
1
DataFrame에서 sum 을 사용할 때는 axis 매개변수를 사용하여 행 합계(axis=0) 또는 열 합계(axis=1)를 계산할 수 있어요.
그런데 groupby 연산 후에는 sum 함수에 axis는 지정할 수 없습니다.
이 경우, sum 함수는 각 그룹별로 열의 합계를 자동으로 계산합니다.