>백엔드 개발 >파이썬 튜토리얼 >다른 열의 일치하는 값을 기반으로 Pandas DataFrame 열의 값을 바꾸는 방법은 무엇입니까?

다른 열의 일치하는 값을 기반으로 Pandas DataFrame 열의 값을 바꾸는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-01 06:04:31360검색

How to Replace Values in Pandas DataFrame Columns Based on Matching Values in Another Column?

일치하는 값을 기반으로 Pandas에서 데이터 수정

데이터 조작을 위해 Stata에서 Pandas로 전환할 때 다음을 기반으로 값을 변경하는 접근 방식을 이해합니다. 매칭 조건이 필수입니다. "ID" 열의 해당 값이 특정 숫자와 일치할 때 "FirstName" 및 "LastName" 열의 특정 값을 바꾸려는 상황을 생각해 보세요.

Stata에서는 다음과 같은 명령을 사용하여 이 작업을 간단하게 수행할 수 있습니다. "ID==103인 경우 FirstName = 'Matt'를 바꾸세요." Pandas에서 유사한 결과를 얻으려면 loc 또는 체인 할당 방법을 활용할 수 있습니다.

loc 방법:

loc 방법은 논리적 인덱싱을 사용하여 데이터를 평가하고 수정합니다. 특정 조건에 따라:

<code class="python">import pandas as pd
df = pd.read_csv("test.csv")
df.loc[df.ID == 103, 'FirstName'] = "Matt"
df.loc[df.ID == 103, 'LastName'] = "Jones"</code>

연결 할당:

연결 할당은 최신 Pandas 버전에서는 권장되지 않지만 이 작업에는 사용할 수도 있습니다.

<code class="python">import pandas as pd
df = pd.read_csv("test.csv")
df['FirstName'][df.ID == 103] = "Matt"
df['LastName'][df.ID == 103] = "Jones"</code>

두 방법 모두에서 "df.ID == 103" 표현식은 부울 마스크를 생성합니다. 여기서 True는 ID가 103인 행을 나타냅니다. 그런 다음 후속 할당에서는 "FirstName" 및 "LastName"의 соответствуший 값을 수정합니다. " 열.

참고: 이전 Pandas 버전의 경우 연결 할당이 허용되는 접근 방식입니다. 그러나 loc는 더 높은 안정성을 제공하므로 최신 버전에서 선호되는 방법입니다.

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

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