반응형
질문
다음과 같은 딕셔너리가 있습니다: di = {1: "A", 2: "B"}
이를 다음과 같은 데이터프레임의 col1
열에 적용하고 싶습니다:
col1 col2
0 w a
1 1 2
2 2 NaN
다음과 같이 결과를 얻고 싶습니다:
col1 col2
0 w a
1 A 2
2 B NaN
어떻게 가장 잘 할 수 있을까요?
답변
.replace
를 사용할 수 있습니다. 예를 들어:
>>> df = pd.DataFrame({'col2': {0: 'a', 1: 2, 2: np.nan}, 'col1': {0: 'w', 1: 1, 2: 2}})
>>> di = {1: "A", 2: "B"}
>>> df
col1 col2
0 w a
1 1 2
2 2 NaN
>>> df.replace({"col1": di})
col1 col2
0 w a
1 A 2
2 B NaN
또는 Series
에서 직접 사용할 수 있습니다. 즉, df["col1"].replace(di, inplace=True)
입니다.
반응형
댓글