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 그룹 내 정렬,단일 그룹 정렬,레이 블 의 인 스 턴 스 는 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.참고 하 실 수 있 고 많은 응원 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.