python pandas 그룹 내 정렬,단일 그룹 정렬,레이 블 의 인 스 턴 스

요약:본 고 는 주로 정렬 을 어떻게 하 는 지 설명 한다.두 가지 상황 으로 나 뉘 어 그룹 별로 정렬 하지 않 고 그룹 내 에서 정렬 합 니 다.무슨 뜻 이 죠?구체 적 으로 밤 을 들 겠 습 니 다.
***주의*****
단순히 어떤 열 에 대해 순 서 를 매기 고 싶 을 뿐 번 호 를 매기 지 않 는 다 면.sort 를 사용 하 세 요.values 면 됩 니 다.다음은 어떻게 번호 도 올 리 는 지 에 관 한 것 이다.
――――――――――――――――――――――――――――
우 리 는 다음 과 같은 데이터 세트 가 있다.

우 리 는 다음 에 두 가지 정렬 을 진행 하고 싶다.첫 번 째 간단 한 것 도 자주 사용 되 는 것 이 고 특정한 열 을 간단하게 정렬 한 다음 에 번 호 를 추가 합 니 다.
예 를 들 어 우리 팀 commentnum 이 열 은 큰 것 부터 작은 것 까지 정렬 한 다음 에 번 호 를 줍 니 다.다음 그림:

보 입 니 다.sortnum 이 열 이 바로 우리 팀 commentnum 의 정렬.
어떻게 실현 합 니까?간단 합 니 다.코드 는 다음 과 같 습 니 다.

data['sort_num']=data['comment_num'].rank(ascending=0,method='dense')

여기 서 우 리 는 두 개의 인 자 를 사 용 했 습 니 다.첫 번 째 는 ascending 을 잘 이해 합 니 다.바로 오름차 순 인지 내림차 순 인지 선택 하 는 것 입 니 다.
다른 매개 변수 method,이 매개 변 수 는 매우 중요 합 니 다.다음 에 자세히 말씀 드 리 겠 습 니 다.
때때로 우 리 는 정렬 할 때 같은 크기 를 만 날 수 있 는데,이 럴 때 어떻게 처리 합 니까?method 는 사실 우리 로 하여 금 어떻게 처리 할 것 인 가 를 선택 하 게 하 는 것 이다.
다음 과 같은 몇 가지 처리 방안 이 있다.
첫 번 째 상황 은 같은 번호 가 나 오 면 번호 가 같 고 그 후에 번호 가 평소 대로 증가한다.이런 상황 은 바로 위의 그림 입 니 다.우 리 는 comment 를 보 았 습 니 다.num 은 4 와 같은 것 은 2 개 이 고 번 호 는 1 이다.comment_num 이 3 과 같 을 때 번 호 는 2 이 고 이것 은 정상 적 인 1 순 으로 증가 하 는 것 이 라 고 한다.이것 과 시간 method='dense'
두 번 째 상황 은 똑 같 으 면 가장 먼저 나타 난 값 번 호 를'최소'로 하고 다른 똑 같은 값 은 순서대로 1 로 증가 합 니 다.만약 에 위의 코드 method='first'를 사용 하면 이런 효 과 를 실현 합 니 다.효 과 는 다음 그림 과 같 습 니 다.

data['sort_num']=data['comment_num'].rank(ascending=0,method='first')

comment_num 중 4 가 가장 크 고 첫 번 째 줄 중 4 가 가장 먼저 나타 나 기 때문에 번 호 는 1 이다.
세 번 째 상황 과 네 번 째 상황 은 비교적 복잡 하 다.글 자 는 설명 하기 어렵 습 니 다.다음은 코드 와 효 과 를 직접 넣 겠 습 니 다.
method='min'일 때

data['sort_num']=data['comment_num'].rank(ascending=0,method='min')

method='max'시

data['sort_num']=data['comment_num'].rank(ascending=0,method='max')

분할 선
위 는 한 열의 정렬 일 뿐,아래 는 그룹 내 정렬 이다.무슨 뜻 이에 요?아래 의 예 를 같이 보다.

만약,cate 가 7 인 commentnum 정렬,마찬가지 로 cate 8 의 commentnum 정렬.즉,commentnum 정렬 할 때 같은 cate 만 고려 합 니 다.이것 이 바로 그룹 내 정렬 입 니 다.
실현 효 과 는 다음 과 같 아야 한다.

실현 코드 도 간단 하 다.

data['group_sort']=data['comment_num'].groupby(data['cate']).rank(ascending=0,method='dense')
이상 의 python pandas 그룹 내 정렬,단일 그룹 정렬,레이 블 의 인 스 턴 스 는 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.참고 하 실 수 있 고 많은 응원 바 랍 니 다.

좋은 웹페이지 즐겨찾기