Pandas 系列是带有轴标签的一维ndarray。标签不必是唯一的,但必须是可哈希的类型。该对象同时支持基于整数和基于标签的索引,并提供了许多方法来执行涉及索引的操作。
Pandas Series.argsort()
函数返回将对给定系列对象的基础数据进行排序的索引。
用法: Series.argsort(axis=0, kind=’quicksort’, order=None)
参数:
axis:无效,但已接受与numpy的兼容性。
kind:{'mergesort','quicksort','heapsort'},默认的'quicksort'
order:无效,但已接受与numpy的兼容性。
返回:argsorted:Series,用-1表示存在nan值的位置
范例1:采用Series.argsort()
函数返回索引序列,该序列将对给定系列对象的基础数据进行排序。
# importing pandas as pd
import pandas as pd
# Creating the Series
sr = pd.Series([34, 5, 13, 32, 4, 15])
# Create the Index
index_ = ['Coca Cola', 'Sprite', 'Coke', 'Fanta', 'Dew', 'ThumbsUp']
# set the index
sr.index = index_
# Print the series
print(sr)
输出:
Coca Cola 34 Sprite 5 Coke 13 Fanta 32 Dew 4 ThumbsUp 15 dtype:int64
现在我们将使用Series.argsort()
函数返回一个索引序列,该序列将对给定系列对象的基础数据进行排序。
# return the indices which will
# sort the series
result = sr.argsort()
# Print the result
print(result)
# Let's sort the series using the result
print(sr[result])
输出:
Coca Cola 4 Sprite 1 Coke 2 Fanta 5 Dew 3 ThumbsUp 0 dtype:int64 Dew 4 Sprite 5 Coke 13 ThumbsUp 15 Fanta 32 Coca Cola 34 dtype:int64
正如我们在输出中看到的,Series.argsort()
函数已成功返回包含索引的系列对象,该索引将对给定的系列对象进行排序。
范例2:采用Series.argsort()
函数返回索引序列,该序列将对给定系列对象的基础数据进行排序。
# importing pandas as pd
import pandas as pd
# Creating the Series
sr = pd.Series([11, 21, 8, 18, 65, 18, 32, 10, 5, 32, None])
# Create the Index
# apply yearly frequency
index_ = pd.date_range('2010-10-09 08:45', periods = 11, freq ='Y')
# set the index
sr.index = index_
# Print the series
print(sr)
输出:
2010-12-31 08:45:00 11.0 2011-12-31 08:45:00 21.0 2012-12-31 08:45:00 8.0 2013-12-31 08:45:00 18.0 2014-12-31 08:45:00 65.0 2015-12-31 08:45:00 18.0 2016-12-31 08:45:00 32.0 2017-12-31 08:45:00 10.0 2018-12-31 08:45:00 5.0 2019-12-31 08:45:00 32.0 2020-12-31 08:45:00 NaN Freq:A-DEC, dtype:float64
现在我们将使用Series.argsort()
函数返回一个索引序列,该序列将对给定系列对象的基础数据进行排序。
# return the indices which will
# sort the series
result = sr.argsort()
# Print the result
print(result)
# Let's sort the series using the result
print(sr[result])
输出:
2010-12-31 08:45:00 8 2011-12-31 08:45:00 2 2012-12-31 08:45:00 7 2013-12-31 08:45:00 0 2014-12-31 08:45:00 3 2015-12-31 08:45:00 5 2016-12-31 08:45:00 1 2017-12-31 08:45:00 6 2018-12-31 08:45:00 9 2019-12-31 08:45:00 4 2020-12-31 08:45:00 -1 Freq:A-DEC, dtype:int64 2018-12-31 08:45:00 5.0 2012-12-31 08:45:00 8.0 2017-12-31 08:45:00 10.0 2010-12-31 08:45:00 11.0 2013-12-31 08:45:00 18.0 2015-12-31 08:45:00 18.0 2011-12-31 08:45:00 21.0 2016-12-31 08:45:00 32.0 2019-12-31 08:45:00 32.0 2014-12-31 08:45:00 65.0 2020-12-31 08:45:00 NaN dtype:float64
正如我们在输出中看到的,Series.argsort()
函数已成功返回包含索引的系列对象,该索引将对给定的系列对象进行排序。请注意,该函数已返回-1作为缺少值的索引位置。
相关用法
- Python pandas.map()用法及代码示例
- Python Pandas Timestamp.tz用法及代码示例
- Python Pandas Series.str.contains()用法及代码示例
- Python Pandas dataframe.std()用法及代码示例
- Python Pandas Timestamp.dst用法及代码示例
- Python Pandas dataframe.sem()用法及代码示例
- Python Pandas DataFrame.ix[ ]用法及代码示例
- Python Pandas.Categorical()用法及代码示例
- Python Pandas.apply()用法及代码示例
- Python Pandas TimedeltaIndex.contains用法及代码示例
- Python Pandas Timestamp.now用法及代码示例
- Python Pandas Series.str.pad()用法及代码示例
- Python Pandas Series.take()用法及代码示例
- Python Pandas dataframe.all()用法及代码示例
- Python Pandas series.str.get()用法及代码示例
注:本文由纯净天空筛选整理自Shubham__Ranjan大神的英文原创作品 Python | Pandas Series.argsort()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。