• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    미해결

데이터 셋 가공 질문입니다.

20.11.24 16:01 작성 조회수 113

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'] + '--원'

감사합니다.