📅  最后修改于: 2023-12-03 14:46:31.467000             🧑  作者: Mango
argsort()
是熊猫索引对象的一个方法,被用于返回按升序排序后的索引值。它可以用于DataFrame、Series、Panel等熊猫数据结构。
DataFrame/Series/Index.Panel.argsort(axis=0, kind='quicksort', order=None)
返回按照顺序排列的索引值(ndarray),数据类型为int
。如果是Panel对象,则返回的是MultiIndex。
# 导入熊猫库
import pandas as pd
# 创建一个DataFrame对象
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'], 'Age': [25, 31, 18, 42]}
df = pd.DataFrame(data)
# 使用argsort()方法按列排序
sorted_indices = df['Age'].argsort()
# 打印排序后的索引值
print(sorted_indices) # [2 0 1 3]
# 导入熊猫库
import pandas as pd
# 创建一个Series对象
s = pd.Series([3, 1, 4, 2])
# 使用argsort()方法按行排序
sorted_indices = s.argsort(axis=0)
# 打印排序后的索引值
print(sorted_indices) # [1 3 0 2]
# 导入熊猫库
import pandas as pd
# 创建一个Panel对象
data = {'Item1': pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}),
'Item2': pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})}
pn = pd.Panel(data)
# 使用argsort()方法按列排序
sorted_indices = pn['A'].argsort()
# 打印排序后的索引值
print(sorted_indices) # [[0 1 2]
# [0 1 2]]
argsort()
对熊猫对象进行排序时,返回的是排序后的索引值,并不改变原始数据。argsort()
方法时,返回的是一个MultiIndex对象,其中包含排序结果。