언어/Python

Python_pandas_학급별 데이터 분석(실습)

asu2880 2022. 6. 22. 16:28
score = pd.read_csv('./data/score.csv', encoding = 'euc-kr', index_col = '과목')
score

 

# sum 함수는 기본적으로 열 단위로 계산
# 학급별 순위
score.sum().sort_values(ascending = False)

 

# axis = 1 : 행 단위로 계산
score.sum(axis = 1)

 

# 합계 구하기
score['합계'] = score.iloc[:, 0:4].sum(axis = 1)
score

 

# 평균 구하기
score['평균'] = score.iloc[:, 0:4].mean(axis = 1)
score

 

# 반평균 구하기
score.loc['반평균'] = score.iloc[0:5, 0:6].mean().sort_values(ascending = False)
score

 

# min() : 최소값
# max() : 최대값
score.min()
score.min(axis = 1)

 

#  과목별 최대값과 최소값의 차이
sub_min = score.loc[:'과학', :'4반'].min(axis = 1)
sub_min

 

sub_max = score.loc[:'과학', :'4반'].max(axis = 1)
sub_max

 

# apply(복잡한 처리, 행/열)
# 행이나 열 단위로 복잡한 처리(직접 만든 함수)를 할 때 사용
def max_min(x):
    return x.max() - x.min()

# axis = 1 : 행 단위로 계산
score.loc[: '과학', : '4반'].apply(max_min, axis = 1)

728x90
반응형

'언어 > Python' 카테고리의 다른 글

Python_데이터 합치기  (0) 2022.06.22
Python_나이 데이터 분석(실습)  (0) 2022.06.22
Python_도시 데이터 분석(실습)  (0) 2022.06.22
Python_pandas_DataFrame  (0) 2022.06.21
Python_pandas_Series  (0) 2022.06.21