파이썬 판다스 데이터변경에 관련하여 질문드립니다

조회수 589회

작성중인 데이터프레임중 하나의 컬럼은 A 중립 B 3종류중에 하나의 값을 가집니다 이 중립값을 전부 가장 최근에 나왔던 A 또는 B값으로 변경해주려고 합니다 예를들어 A 중립 중립 B 중립 중립 B A 중립 A 중립 B 중립 이렇게 값이 나왔다면 A A A B B B B A A A A B B 이런식으로 만들고싶습니다

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • Python 3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:57:54) [MSC v.1924 64 bit (AMD64)] on win32
    Type "help", "copyright", "credits" or "license()" for more information.
    >>> import pandas as pd
    >>> import numpy as np
    >>> df = pd.DataFrame({"col":list("A 중립 중립 B 중립 중립 B A 중립 A 중립 B 중립".split())})
    >>> df
       col
    0    A
    1   중립
    2   중립
    3    B
    4   중립
    5   중립
    6    B
    7    A
    8   중립
    9    A
    10  중립
    11   B
    12  중립
    >>> df["col"].replace("중립", np.NaN)
    0       A
    1     NaN
    2     NaN
    3       B
    4     NaN
    5     NaN
    6       B
    7       A
    8     NaN
    9       A
    10    NaN
    11      B
    12    NaN
    Name: col, dtype: object
    >>> df["col"].replace("중립", np.NaN).fillna(method="ffill")
    0     A
    1     A
    2     A
    3     B
    4     B
    5     B
    6     B
    7     A
    8     A
    9     A
    10    A
    11    B
    12    B
    Name: col, dtype: object
    >>> df["col"] = df["col"].replace("중립", np.NaN).fillna(method="ffill")
    >>> df
       col
    0    A
    1    A
    2    A
    3    B
    4    B
    5    B
    6    B
    7    A
    8    A
    9    A
    10   A
    11   B
    12   B
    >>> 
    
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)