2015-02-03 3 views
0

"diff"열의 값만 인덱싱하여 새 데이터 프레임을 만들려고합니다. 두 가지 비교를 사용하고 싶지만 작동하지 않습니다. 내가 df[df.diff <=120]를 입력하면pandas DataFrame에서 열을 인덱싱 할 때 다중 비교를 사용하는 방법

df[(df.diff1 <= -120) or (df.diff1 >= 120)] 

는 내가 기대 저를 제공하지만, 내가 두 번째 비교를 추가 할 때 내가 얻을 말한다 오류, "ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()."

I에 의해 혼란 스러워요 :

내 코드입니다 내 구문을 바꾸는 법. 요소 현명한 logical-or 두 시리즈,하지 or의에 대한

답변

2

사용 | :

df[(df.diff1 <= -120) | (df.diff1 >= 120)] 

(df.diff1 <= -120) or (df.diff1 >= 120) 시도가 bools에 (df.diff1 <= -120)(df.diff1 >= 120)을 변환합니다. Pandas follows the NumPy convention of raising an error NDFrame (예 : 시리즈)을 단일 부울 값으로 변환하려고 할 때.

관련 문제