>  기사  >  백엔드 개발  >  특정 기준에 따라 Pandas DataFrame의 특정 값을 어떻게 수정할 수 있나요?

특정 기준에 따라 Pandas DataFrame의 특정 값을 어떻게 수정할 수 있나요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-26 11:07:03191검색

How can I modify specific values in a Pandas DataFrame based on certain criteria?

Pandas의 특정 기준에 따라 값 수정

Pandas DataFrame을 반복할 때 일치 기준에 따라 특정 값을 수정해야 하는 경우가 많습니다. . Pandas에서 이를 달성하기 위해 Pandas의 인덱싱 및 필터링 기능을 활용할 수 있습니다.

문제 이해

목표는 DataFrame의 "ID" 열을 반복하는 것입니다. 특정 ID가 발견되면 그에 따라 "FirstName" 및 "LastName" 열을 변경합니다. Stata에서는 다음을 사용하여 이를 달성할 수 있습니다.

replace FirstName = "Matt" if ID==103
replace LastName = "Jones" if ID==103

Pandas 구현

Pandas에서 이 논리를 구현하려면 다음 접근 방식을 사용할 수 있습니다.

import pandas as pd

df = pd.read_csv("test.csv")

# Using logical indexing and overwrite assignment
df.loc[df.ID == 103, 'FirstName'] = "Matt"
df.loc[df.ID == 103, 'LastName'] = "Jones"

이 코드는 조건 ID == 103을 기준으로 DataFrame을 분할하여 해당 ID가 있는 행을 선택한 다음 "FirstName" 및 "LastName" 열의 값을 원하는 값으로 덮어씁니다.

연결 할당

또 다른 방법은 덜 권장되지만 연결 할당입니다.

df['FirstName'][df.ID == 103] = "Matt"
df['LastName'][df.ID == 103] = "Jones"

이 접근 방식도 필터링 조건에 따라 값을 수정하지만 권장되지 않습니다. 최신 Pandas 버전에서는 예측할 수 없는 동작이 발생할 수 있기 때문입니다.

결론

Pandas는 적절한 인덱싱 및 덮어쓰기 할당 기술을 활용하여 특정 값을 기반으로 효율적으로 수정할 수 있습니다. 일치 기준에 따라 다른 통계 소프트웨어에서 가능한 것과 유사한 복잡한 데이터 조작이 가능합니다.

위 내용은 특정 기준에 따라 Pandas DataFrame의 특정 값을 어떻게 수정할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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