2016-10-22 2 views
2

2 개의 시리즈가 있습니다. 첫 번째 것은 인덱스가 0..8 인 숫자 목록을 포함합니다.정렬되지 않은 인덱스로 팬더 선택

A = pd.Series([2,3,4,6,5,4,7,6,5], name=['A'], index=[0,1,2,3,4,5,6,7,8]) 

두 번째 값은 True 값만 포함하지만 계열 인덱스는 첫 번째 인덱스의 하위 집합입니다.

B = pd.Series([1, 1, 1, 1, 1], name=['B'], index=[0,2,4,7,8], dtype=bool) 

내가 좋아하는, 해당 인덱스의 A-값을 얻기 위해 부울 벡터로 B를 사용하고 싶습니다 :

A[B] 

[...] 
IndexingError: Unalignable boolean Series key provided 

불행하게도이 오류가 발생합니다.

먼저 정렬해야합니까?

답변

5

은 팬더의 버전에

A[B.index.values] 

사용할 수 있습니까? (시리즈 이름이 해시 가능해야하므로 다른 버전이 있으므로 코드에서 오류가 발생합니다)

+1

예, 작동합니다 - 감사합니다. – Ale

+1

@Ale, 나는 약간 수정한다 :'A [B [B == True] .index.values]'또는'A.ix [B [B == True] .index]' – MaxU

관련 문제