본문으로 건너뛰기
Minsing Log
뒤로 가기

pandas dataframe안에 특정 value가 있으면 boolean 판별

Programming & CS

방법1

if (self.qrels['score'] < 1).any():
	self.qrels['score'] = self.qrels.drop(self.qrels[self.qrels['score'] < 1].index)

(self.qrels['score'] < 1).any()는 Pandas DataFrame에서 특정 조건을 만족하는 행이 하나라도 있는지 확인하는 코드다.

여기서 self.qrels['score'] < 1은 qrels DataFrame의 score 열의 값이 1보다 작은 모든 행을 선택하는 부분입니다. 이 부분은 부울 값을 반환하며, 각 행에 대해 score 열의 값이 1보다 작으면 True, 그렇지 않으면 False를 반환한다..

.any()는 이렇게 반환된 부울 값 중에서 True인 값이 하나라도 있는지 확인하는 함수입니다. 즉, score 열의 값이 1보다 작은 행이 하나라도 있으면 True를 반환하고, 그렇지 않으면 False를 반환한다.

따라서 (self.qrels['score'] < 1).any()는 qrels DataFrame의 score 열의 값이 1보다 작은 행이 하나라도 있는지 확인하는 코드입니다. 이 코드를 사용하면, score 열의 값이 1보다 작은 행이 있는지 쉽게 확인할 수 있다.

방법2

result = df.isin(['value1', 'value2', 'value3']).any().any()

any() 메서드는 Pandas DataFrame에서 사용되며, 데이터 프레임의 모든 요소가 참인지 거짓인지를 확인합니다.

any() 메서드를 한 번 사용하면, 각 열에 대해 참인지 거짓인지를 확인합니다. 즉, 각 열에서 적어도 하나의 요소가 참이면 True를 반환하고, 모든 요소가 거짓이면 False를 반환합니다.

따라서, any().any()를 사용하면, 전체 데이터 프레임에서 적어도 하나의 요소가 참이면 True를 반환하고, 모든 요소가 거짓이면 False를 반환합니다. 이는 데이터 프레임의 모든 요소가 특정 조건을 만족하는지 확인하는 데 유용합니다.

공개 여정 구독

글이 올라오면 이메일로 보내드릴게요.

개발, 창업, 배움, 실패와 회고를 짧고 솔직하게 기록합니다. 검색으로 스쳐가는 독자가 아니라 여정을 따라오는 팬을 만들기 위한 뉴스레터입니다.

뉴스레터는 준비 중입니다. 그동안 RSS 로 구독하거나 이메일 로 알림을 요청해 주세요.


이 글 공유하기:

댓글

GitHub 계정으로 로그인해 댓글을 남길 수 있습니다.


이전 글
상속받은 method를 각 데이터 셋에 맞춰 재정의 하는법 = method override
다음 글
유용하고 고오오마운 groupby, agg method 써보기