반응형
점수를 학점으로 바꿔보는 예제입니다. 변환 기준은 아래와 같습니다.
#학점 기준
#[0~70) : D
#[70~80) : C
#[80~90) : C
#[90~100) : D
먼저 데이터를 생성하겠습니다. 학생의 번호와 점수입니다.
#데이터 생성
num=list(range(1,11))
score=[78,62,65,94,71,97,57,83,71,96]
md=pd.DataFrame({'num':num,'score':score})
>>> md
num score
0 1 78
1 2 62
2 3 65
3 4 94
4 5 71
5 6 97
6 7 57
7 8 83
8 9 71
9 10 96
점수를 학점으로 변환해봅시다. 판다스의 cut 함수를 사용합니다.
#점수를 학점으로 변환
md['score2']=pd.cut(score,bins=[0,70,80,90,110],right=True) #right 옵션 True
md['score3']=pd.cut(score,bins=[0,70,80,90,110],right=False) #righth 옵션 False
md['score4']=pd.cut(score,bins=[0,70,80,90,110],labels=["D","C","B","A"],right=False) #라벨 설정
아래는 결과입니다. 옵션별로 비교할 수 있습니다.
>>> md
num score score2 score3 score4
0 1 78 (70, 80] [70, 80) C
1 2 62 (0, 70] [0, 70) D
2 3 65 (0, 70] [0, 70) D
3 4 94 (90, 110] [90, 110) A
4 5 71 (70, 80] [70, 80) C
5 6 97 (90, 110] [90, 110) A
6 7 57 (0, 70] [0, 70) D
7 8 83 (80, 90] [80, 90) B
8 9 71 (70, 80] [70, 80) C
9 10 96 (90, 110] [90, 110) A
반응형
'5-3. Pandas 제공 자료구조 > DataFrame' 카테고리의 다른 글
[파이썬 판다스] 데이터프레임에서 임의로 원하는 개수의 행 뽑기 (중복여부 결정) (1) | 2022.02.09 |
---|---|
[파이썬 판다스] 데이터프레임 특정 조건을 만족하는지 확인하기(any, all) (0) | 2022.02.08 |
[파이썬 판다스] 데이터프레임에서 매칭된 데이터 추가하기 (map) (0) | 2022.01.20 |
[파이썬 판다스] 데이터프레임에서 중복 행 확인하고 제거하기 (0) | 2022.01.19 |
[파이썬 판다스] 데이터프레임 행 개수, 열 개수 (0) | 2022.01.12 |
댓글