집 >데이터 베이스 >MySQL 튜토리얼 >Pandas에서 DENSE_RANK 기능을 구현하는 방법은 무엇입니까?
Pandas에서 DENSE_RANK 기능을 구현하는 동일한 방법
Pandas는 그룹 내에서 값의 순위를 매겨야 하는 경우가 많으며, 중복된 값은 동일한 순위를 갖는 것으로 간주됩니다. 이를 위해 pd.Series.rank
함수, 특히 'dense'
메서드를 사용할 수 있습니다.
다음 데이터 프레임을 예로 들어보겠습니다.
年份 | 数值 |
---|---|
2012 | 10 |
2013 | 20 |
2013 | 25 |
2014 | 30 |
우리의 목표는 "연도" 열을 기준으로 조밀한 순위를 할당하는 "순위"라는 새 열을 만들어 다음과 같은 결과를 얻는 것입니다.
年份 | 数值 | 排名 |
---|---|---|
2012 | 10 | 1 |
2013 | 20 | 2 |
2013 | 25 | 2 |
2014 | 30 | 3 |
이를 위해 다음 코드를 사용할 수 있습니다:
<code class="language-python">df['排名'] = df.年份.rank(method='dense').astype(int)</code>
pd.Series.rank
이 함수는 시리즈의 각 요소의 순위를 계산합니다. 'dense'
을 메소드로 지정하여 동일한 값을 가진 요소에 동일한 순위를 할당하도록 지시합니다. 마지막으로 .astype(int)
을 사용하여 결과를 정수 데이터 유형으로 변환합니다.
코드 출력은 아래와 같이 데이터 프레임에 새로운 "순위" 열을 생성합니다.
<code> 年份 数值 排名 0 2012 10 1 1 2013 20 2 2 2013 25 2 3 2014 30 3</code>
위 내용은 Pandas에서 DENSE_RANK 기능을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!