Excel과 대조적으로 Python에서 "사용자 지정 텍스트"정렬을 구현하는 방법!

"숫자 데이터"정렬은 모든 사람이 가장 좋아하고 익숙한 작업 일 수 있지만 "텍스트 데이터"정렬 방법은 무엇입니까? 이 질문은 어떻게 작동하는지 마음으로 묵상 할 수 있습니다.

때로는 작은 데이터 조각을 Excel에서 직접 사용하여 요구 사항을 완료 할 수 있다면이를 사용하여 작동하는 방법은 무엇입니까? 데이터의 양이 많고이 목표를 달성하기 위해 Python을 사용하려면 어떻게해야합니까?

이를 바탕으로 동급생 Huang은 오늘 모두가 Excel과 Python에서이 두 가지 요구 사항을 각각 구현하도록 안내합니다.

데이터 소개

다음과 같은 세 개의 데이터 열이 있습니다. "교육"필드의 경우 "대학", "학부"및 "대학원"별로 정렬하십시오. 학력에 따라 '기본급'의 내림차순으로 정렬됩니다.
여기에 사진 설명 삽입

Excel 구현

① 모든 데이터 선택

여기에 사진 설명 삽입

② 시작-> 정렬 및 필터링-> 사용자 정의 정렬을 클릭합니다.

여기에 사진 설명 삽입

③ 다음과 같은 인터페이스가 나타나면 그림과 같이 작업을 완료합니다.

여기에 사진 설명 삽입

④ 다음과 같은 인터페이스가 나타나면 그림과 같이 작업을 완료합니다.

여기에 사진 설명 삽입

⑤ 다음과 같은 인터페이스가 나타나면 그림과 같은 작업을 완료하십시오.

여기에 사진 설명 삽입

⑥ 효과는 다음과 같습니다.

여기에 사진 설명 삽입

Python 구현

import pandas as pd

# 自定义一个序列
x = [ '研究生', '本科', '大专']

# 读取数据
df = pd.read_excel("测试.xlsx")

# 将“学历”列设置为category数据类型
df["学历"] = df["学历"].astype("category")

# reorder_categories表示重新排序在x序列中指定的类别
# inplace=True表示对现有类别重新排序
df["学历"].cat.reorder_categories(x, inplace=True)

# 然后采用多列排序的方式,对“学历”列按照指定x顺序排列,对“基本工资”列进行降序排列
df.sort_values(by=["学历","基本工资"], inplace=True,ascending=[True,False])
df

최종 효과 :
여기에 사진 설명 삽입

추천

출처blog.csdn.net/weixin_41261833/article/details/109165957