조건식을 기반으로 Pandas DataFrame에서 행 제거
df[(len(df['column name']) 사용 접근 방식 < 2)] 문자열 길이가 2를 초과하는 행을 삭제하는 것은 올바르지 않습니다. 표현식이 행 인덱스가 아닌 True 및 False 키가 있는 부울 DataFrame으로 평가되기 때문에 KeyError가 발생합니다.
조건식을 기반으로 행을 삭제하려면 drop 메소드를 활용할 수 있습니다. 작동 방식은 다음과 같습니다.
drop()을 사용하여 행 삭제
df = df.drop(df[df['column name'].str.len() > 2].index)</p> <p>이 예에서는 df['column name'].str.len() > 2는 문자열 길이가 2보다 큰 행을 나타내는 부울 DataFrame을 생성합니다. 이 DataFrame의 index 속성은 해당 행의 인덱스를 검색한 다음 drop()에 전달됩니다.</p> <p><strong>대체 구문</strong> </p> <pre class="brush:php;toolbar:false">df = df.drop(df[(df['column name'].str.len() > 2)].index)
이 구문은 부울 DataFrame과 인덱스를 더 명확하게 구분합니다.
다중 조건
부울 인덱싱을 사용하면 논리 연산자를 사용하여 조건을 결합할 수 있습니다. 예를 들어, 문자열 길이가 2를 초과하고 점수가 50 미만인 행을 제거하려면:
df = df.drop(df[(df['column name'].str.len() > 2) & (df['score'] < 50)].index)
위 내용은 조건식을 기반으로 Pandas DataFrame에서 행을 삭제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!