"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Pandas DataFrame으로 작업할 때 왜 .copy()를 사용해야 합니까?

Pandas DataFrame으로 작업할 때 왜 .copy()를 사용해야 합니까?

2024년 11월 12일에 게시됨
검색:815

Why Should I Use .copy() When Working with Pandas DataFrames?

Pandas에서 DataFrame 복사본 생성이 필수인 이유는 무엇인가요?

Pandas로 작업할 때 데이터 프레임 생성 간의 차이점을 이해하는 것이 중요합니다. 복사해서 참조하면 됩니다. my_dataframe[features_list]를 사용하여 데이터 프레임을 인덱싱하면 뷰가 반환되지만 일부 프로그래머는 특정 이유로 .copy()를 사용하여 데이터 프레임을 복사하는 것을 선호합니다.

사본 생성의 장점:

  • 불변 하위 집합: 복사본은 하위 집합(예: X)에 대한 변경 사항이 원본 데이터 프레임(my_dataframe)에 영향을 미치지 않도록 보장합니다. 이는 작업을 격리하고 의도하지 않은 결과를 방지하려는 경우 특히 중요합니다.

복사하지 않음의 단점:

  • 변경 사항 전파: 복사본을 만들지 않으면 하위 집합에 대한 변경 사항이 원본 데이터 프레임에 직접적인 영향을 미칩니다. 다음 코드를 고려해보세요:
df = DataFrame({'x': [1, 2]})
df_sub = df[0:1]  # No copy
df_sub.x = -1
print(df)  # Will output:   x
                            -1
                            2

보시다시피 df_sub를 수정하면 df도 변경되었습니다.

지원 중단 참고:

최신 버전에서는 Pandas에서 권장되는 접근 방식은 .copy()가 필요 없이 암시적으로 복사본을 생성하는 인덱싱에 loc 또는 iloc 메서드를 사용하는 것입니다. 그러나 더 이상 사용되지 않는 .copy() 사용법은 이전 버전의 Pandas와 관련이 있습니다.

사본 생성의 중요성을 이해하면 Pandas에서 데이터 프레임을 효과적으로 관리하여 의도하지 않은 수정으로부터 원본 데이터를 안전하게 유지할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3