用 Python 编写一个程序,打印给定系列中已排序的不同值的数字索引数组
pythonpandasserver side programmingprogramming
假设您有一个系列,并且已排序的不同值的数字索引为 −
已排序的不同值 - 数字数组索引 [2 3 0 3 2 1 4] ['apple' 'kiwi' 'mango' 'orange' 'pomegranate']
为了解决这个问题,我们将遵循下面给出的步骤 −
解决方案
在非唯一元素列表中应用 pd.factorize() 函数并将其保存为 index,index_value。
index,unique_value = pd.factorize(['mango','orange','apple','orange','mango','kiwi','pomegranate'])
打印索引和元素。显示结果时未对不同值及其索引进行排序
在列表元素内应用 pd.factorize() 并设置 sort=True,然后将其保存为 sorted_index,unique_value
sorted_index,unique_value = pd.factorize(['mango','orange','apple','orange','mango','kiwi','pomegranate'],sort=True)
最后打印数字索引和不同值
示例
让我们看下面的代码以更好地理解 −
import pandas as pd index,unique_value = pd.factorize(['mango','orange','apple','orange','mango','kiwi','pomegranate']) print("未对不同值进行排序-数字数组索引") print(index) print(unique_value) print("排序的不同值-数字数组索引") sorted_index,unique_value = pd.factorize(['mango','orange','apple','orange','mango','kiwi','pomegranate'],sort=True) print(sorted_index) print(unique_value)
输出
未对不同值进行排序-数字数组索引 [0 1 2 1 0 3 4] ['mango' 'orange' 'apple' 'kiwi' 'pomegranate'] 排序的不同值 - 数字数组索引 [2 3 0 3 2 1 4] ['apple' 'kiwi' 'mango' 'orange' 'pomegranate']