DataFrame
에 주식 값이 포함되어 있습니다.팬더 데이터 프레임의 다른 두 열의 값을 조건부로 선택하여 새 열
그것은 다음과 같습니다
>>>Data Open High Low Close Volume Adj Close Date
2013-07-08 76.91 77.81 76.85 77.04 5106200 77.04
내가 가진 조건 새 열을 만들려고
다음 if 문 :Traceback (most recent call last):
File "<pyshell#116>", line 1, in <module>
Data[1]['Test'] =Data[1]['Close'] if Data[1]['Close'] > Data[1]['Open'] else Data[1]['Open']
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
: 나는 다음과 같은 오류가
Data['Test'] =Data['Close'] if Data['Close'] > Data['Open'] else Data['Open']
그 다음 사용 a.all()
:
Data[1]['Test'] =Data[1]['Close'] if all(Data[1]['Close'] > Data[1]['Open']) else Data[1]['Open']
그 결과 전체 ['Open']
열이 선택되었습니다. ['Open']
과 ['Close']
열 사이에서 가장 큰 값을 선택할 때마다 원하는 조건을 얻지 못했습니다.
도움을 주시면 감사하겠습니다.
감사합니다.
(예를 들어 '닫기'), 당신이 (다른 coulumn 당신이 안양 [''에서 셀렉틴된다 예를 들어 열을 이렇게 정말해야하지만 ' A는 B ']'', 그렇지 않으면 당신은 혼합 플로트/문자열 열을 얻을 것이다, 일반적으로 유용하지'[DF]> 'A']''안양 [''마스크와 동일 할 필요는 없다 '(그리고 .. ''DF :) 아무것도 효율적 또한 I는'DF [ 'B']'FYI이 정확히 동일하다 (그리고 팬더 선택기 열로 정렬한다)를 대체 값이 다른 열을 가질 수있다 .loc [df [ 'A']> df [ 'B'], 'A'] = df [ 'B']'' – Jeff