"숫자 데이터"정렬은 모든 사람이 가장 좋아하고 익숙한 작업 일 수 있지만 "텍스트 데이터"정렬 방법은 무엇입니까? 이 질문은 어떻게 작동하는지 마음으로 묵상 할 수 있습니다.
때로는 작은 데이터 조각을 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
최종 효과 :