>백엔드 개발 >파이썬 튜토리얼 >조건에 따라 Pandas DataFrame의 열 값을 선택적으로 바꾸는 방법은 무엇입니까?

조건에 따라 Pandas DataFrame의 열 값을 선택적으로 바꾸는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-31 02:20:02837검색

How to Selectively Replace Column Values in a Pandas DataFrame Based on Conditions?

Pandas DataFrame: 조건에 따라 열 값 바꾸기

이 질문의 목표는 조건에 따라 DataFrame 열의 값을 선택적으로 바꾸는 것입니다. 조건. 축구 팀과 첫 시즌이 포함된 DataFrame이 주어지면 1990년을 초과하는 'First Season' 열의 모든 값을 1로 바꾸고 싶습니다.

제공된 솔루션 df.loc[(df['First Season '] > 1990)] = 1, 대상 열뿐만 아니라 선택한 행의 모든 ​​값을 잘못 바꿉니다. 이 문제를 해결하려면 수정할 열을 지정해야 합니다.

이 수정에 대한 올바른 구문은 다음과 같습니다.

df.loc[df['First Season'] > 1990, 'First Season'] = 1

작동 방식은 다음과 같습니다.

  • df.loc[(df['First Season'] > 1990)]: 'First Season' 값이 1990보다 큰 행을 선택하여 DataFrame에 인덱싱할 라벨을 효과적으로 생성합니다.
  • 'First Season': 교체가 발생해야 하는 열을 선택적으로 지정합니다.

이 코드 줄을 실행한 후에는 지정된 조건을 충족하는 'First Season' 값만 다음으로 대체됩니다. 1, DataFrame의 나머지 부분을 보존합니다.

추가 고려 사항:

원하는 결과가 부울 표시기인 경우 값을 1로 바꾸는 대신 다음을 사용할 수 있습니다. 부울 시리즈를 생성하고 이를 정수 데이터 유형으로 변환하는 부울 조건:

df['First Season'] = (df['First Season'] > 1990).astype(int)

이렇게 하면 True 값이 1로, False 값이 0으로 변환되어 '첫 번째 시즌' 열에 부울 표시기가 생성됩니다.

위 내용은 조건에 따라 Pandas DataFrame의 열 값을 선택적으로 바꾸는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.