KATA는 기술과 기술 향상에 초점을 맞춘 코드 챌린지입니다.
일부는 프로그래밍 기본 사항을 교육하는 반면 다른 일부는 복잡한 문제 해결에 중점을 둡니다.
이 용어는 The Pragmatic Programmer 라는 책의 공동 저자인 Dave Thomas 가
무술에서 일본의 카타 개념을 인정하면서 처음 만들어졌습니다.
Dave의 개념 버전은 코드 카타를 프로그래머가
연습과 반복을 통해 기술을 연마하는 데 도움이 되는 프로그래밍 연습으로 정의합니다.
리트코드 - 판다스 30일 문제
✔️ 제출 코드
✔️ 코드 분석
import pandas as pd
def order_scores(scores: pd.DataFrame) -> pd.DataFrame:
scores['rank'] = scores['score'].rank(method = 'dense', ascending = False).astype(int)
result = scores[['score', 'rank']].sort_values(by = ['score'], ascending = False).reset_index(drop = True)
return result
PANDAS
rank()
메서드 사용하여 순위 매기기
# Dense Rank
# 점수(score)에 대해 동일한 점수에 동일한 순위를 부여하며,
# 다음 순위가 건너뛰지 않도록 부여하는 방법
scores['rank'] = scores['score'].rank(method = 'dense', ascending = False).astype(int)
데이터프레임 정렬하여 결과 정리하기
# 정렬 및 결과 정리
# 점수(score) 기준 내림차순 정렬, 순위(rank)와 함께 결과 정리
# 정렬된 데이터프레임의 인덱스를 초기화하여 깔끔한 결과 반환
result = scores[['score', 'rank']].sort_values(by = ['score'], ascending = False).reset_index(drop = True)