Python Pandas – 为新索引计算索引器和掩码,即使为非唯一值对象
要为新索引计算索引器和掩码,即使为非唯一值对象,可以使用 index.get_indexer_non_unique() 方法。
首先,导入所需的库
import pandas as pd
创建包含一些非唯一值的 Pandas 索引 –
index = pd.Index([10, 20, 30, 40, 40, 50, 60, 60, 60, 70])
显示 Pandas 索引 –
print("Pandas 索引...\n",index)
计算索引器和掩码,-1 为被标记为未在索引中。这也计算非唯一的 Index 对象值 –
print("\n获取索引...\n",index.get_indexer_non_unique([30, 40, 90, 100, 50, 60]))
示例
以下是代码 –
import pandas as pd
# Creating Pandas index with some non-unique values
index = pd.Index([10, 20, 30, 40, 40, 50, 60, 60, 60, 70])
# Display the Pandas index
print("Pandas 索引...\n",index)
# Return the number of elements in the Index
print("\n索引中的元素数...\n",index.size)
# Compute indexer and mask
# Marked by -1, as it is not in index
# This also computes non-unique Index object values
print("\n获取索引...\n",index.get_indexer_non_unique([30, 40, 90, 100, 50, 60]))
输出
这将生成以下输出 –
Pandas 索引...
Int64Index([10, 20, 30, 40, 40, 50, 60, 60, 60, 70], dtype='int64')
索引中的元素数...
10
获取索引...
(array([ 2, 3, 4, -1, -1, 5, 6, 7, 8], dtype=int64), array([2, 3], dtype=int64))
极客教程