팬더로 불리언 테스트를 시도 할 때 나는 계속 ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
을 얻었습니다. 그것이 무엇을 말했는지 이해하지 못하고, 나는 그것을 이해하려고 노력하기로 결정했다.팬더 부울 .any() .all()
그러나이 시점에서 나는 완전히 혼란 스럽습니다. 여기
내가 그들 사이에 공유 단일 데이터 포인트, 두 변수의 dataframe를 작성 (3) : 이제
In [75]:
import pandas as pd
df = pd.DataFrame()
df['x'] = [1,2,3]
df['y'] = [3,4,5]
나는 모든 시도 나는 "이다 번역하는 (Y보다 X 이하이다) x의 모든 값은 y보다 작습니다. "그리고 저는 이해가되지 않는 답을 얻습니다.
In [79]:
if all(df['x'] < df['y']):
print('True')
else:
print('False')
True
다음 나는 어떤 난에 "Y보다 X의 값이"나는 이해가되지 않는 다른 답변을 얻을 번역 (X Y 미만)보십시오.
In [77]:
if any(df['x'] < df['y']):
print('True')
else:
print('False')
False
요컨대 any() 및 all()은 실제로 무엇을합니까?
내가 두 경우 모두 사실 얻는다. 이것이 당신이 테스트하고있는 예제입니까? – Marcin
'df [ 'x']
나는 당신이 관찰 한 버그를 재현 할 수 없다. 나를 위해,'if ('df [ 'y']) : print ('True')'는'True'를 출력합니다. 중간 문장에서 이상한 일을하고있을 수도 있습니다. "진실의 순간"에'print (df [ 'x'], df [ 'y'], df [ 'x']