2017-05-28 86 views
1

我有一個熊貓指數,並且該指數中的整數位置列表可能並不全部存在於該指數中。例如。熊貓指數的軟選擇

idx = pd.Index(['A', 'B', 'C']) 

l1 = np.array([1, 2]) 
l2 = np.array([1, 4]) 

現在

idx.loC# doesn't exist 
idx[l1] # => ['B', 'C'] 
idx[l2] # KeyError 

如何獲得

idx.magic(l2) # => ['B'] 

現在我做的事情大致是

pd.DataFrame(idx, columns=['name']).merge(pd.DataFrame(l2), how='left', left_on='name', right_on...) 

這是毛。

回答

2

據我所知Index沒有針對這種情況提供任何特殊的查找,但你可以簡單地過濾索引,就像這樣:

l2 = l2[l2 < len(idx)] 

idx[l2] 
Out[15]: Index(['B'], dtype='object')