NaN을 보존하면서 사전을 사용하여 Pandas 열의 값 다시 매핑
데이터 프레임을 처리하는 과정에서 데이터 프레임의 값을 변경해야 하는 경우가 종종 있습니다. 정의된 매핑을 기반으로 하는 특정 열입니다. di = {1: "A", 2: "B"}와 같이 사전 정의된 값 변환이 포함된 사전이 있고 이러한 매핑을 col1이라는 pandas 열에 적용하려는 시나리오를 생각해 보세요. 목표는 NaN 값은 그대로 유지하면서 그에 따라 col1의 값을 수정하는 것입니다.
이러한 변환을 달성하는 매우 효과적인 접근 방식 중 하나는 pandas의 .replace 메서드를 활용하는 것입니다. 이 방법을 사용하면 특정 값이나 범위를 지정된 목표 값으로 바꿀 수 있습니다. 구현 방법은 다음과 같습니다.
import pandas as pd import numpy as np # Example DataFrame df = pd.DataFrame({'col2': {0: 'a', 1: 2, 2: np.nan}, 'col1': {0: 'w', 1: 1, 2: 2}}) # Mapping dictionary di = {1: "A", 2: "B"} # Apply value remapping using .replace df.replace({"col1": di}, inplace=True) # Output DataFrame with remapped values while preserving NaN print(df)
이 예에서 .replace 메소드는 사전을 인수로 사용합니다. 여기서 키는 col1의 원래 값을 나타내고 값은 원하는 다시 매핑된 값을 나타냅니다. inplace 매개변수를 True로 설정하면 원본 데이터프레임이 직접 수정되어 재할당이 필요하지 않습니다.
또는 변환을 col1 시리즈에 구체적으로 적용하려는 경우 다음 구문을 사용할 수 있습니다.
df["col1"].replace(di, inplace=True)
NaN은 매핑 사전의 키가 아니기 때문에 이 접근 방식을 사용하면 NaN 값이 영향을 받지 않게 됩니다.
위 내용은 NaN 값을 유지하면서 사전을 사용하여 Pandas 열 값을 다시 매핑하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!