작성
·
147
0
안녕하세요.
주피터 노트북에서 application test파일불러온 후 EXT_SOURCE_3의 열의 데이터 가공을 할 떄 데이터가 변경이 되는데요.
예를들어 수치값을 --원 이런식으로 나타나게 하고 싶습니다. 만약에 예시와 같은 행동을 취할 시 int->str로 변경되서요,
그래서 생각한게 깊은복사를 하여 데이터셋을 복사한 후 복사한 데이터가지고 가공할려고 하여 아래와 같이 적었습니다.
import copy
b = copy.deepcopy(['EXT_SOURCE_3의 '])
하지만 기본데이터(원래 다운받은 데이터)에서 변경이 됩니다.
혹시 예시와 같은 해동을 했을 때 다시 원형 데이터로 되돌릴 수 있는 방법이 있나요?
아니면 데이터 전체열은 깊은 복사가 안되는 건지 궁금합니다.
답변 1
0
안녕하십니까,
b = copy.deepcopy(['EXT_SOURCE_3'])를 하면 원본 데이터를 변경하는 지는 저도 처음 알았습니다.
dataframe의 copy() 메소드를 사용해보심 어떨지요?
b = train_df['EXT_SOURCE'].copy(deep=True)
혹시 예시와 같은 해동을 했을 때 다시 원형 데이터로 되돌릴 수 있는 방법이 있나요?
=> 원래 DataFrame에 새로운 컬럼으로 데이터를 만드시는 건 어떠신지요
train_df['EXT_SOURCE_NEW'] = train_df['EXT_SOURCE_NEW'] + '--원'
감사합니다.