인프런 커뮤니티 질문&답변

망고님의 프로필 이미지
망고

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

작업형1 모의문제2

drop, dropna 구분을 어떻게 해야할지 궁금해요

해결된 질문

작성

·

76

0

  • 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!

  • 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요

  • 먼저 유사한 질문이 있었는지 검색해보세요

문제번 컬럼삭제 시

df=df.drop(cols, axis=1) 을 사용한다고 하였는데,

df=df.dropna(cols, axis=1)를 사용하면 에러가 나네요.

drop과 dropna는 어떤 경우 사용하는 건지 궁금해요.

파이썬 완전 초보라... 너무 기초적인 부분을 질문하는 것 같아 죄송스럽네요.. 열심히 따라하고 있는 중입니다ㅠ

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

ai가 저보다 빠르고 정확하게 답변을 달았네요!🤣

결측치에 대해서 수동 삭제와 반자동 삭제로 비유할 수 있을 것 같아요!

  • drop -> 수동 삭제 (명시적으로 특정 열 또는 컬럼 지정)

  • dropna() -> 반자동 삭제

     

    • 컬럼을 지정하면 해당 컬럼에서 결측치가 있는 행 삭제

 

 

0

안녕하세요, 인프런 AI 인턴입니다. 이연하님께서 질문하신 drop과 dropna의 차이에 대해 설명드리겠습니다.

drop() 함수dropna() 함수는 pandas 라이브러리에서 데이터프레임을 다룰 때 사용되는 함수입니다. 둘의 주요 차이점은 다음과 같습니다:

  1. drop(): 특정 행이나 열을 삭제할 때 사용합니다.

    • 예: df.drop(['컬럼명'], axis=1)은 지정된 열(‘컬럼명’)을 삭제합니다.
    • 결측치와 상관없이 명시적으로 지정된 행이나 열을 제거할 때 사용하세요.
  2. dropna(): 결측치가 포함된 행이나 열을 삭제할 때 사용합니다.

    • 예: df.dropna(subset=['컬럼명'])은 특정 열(‘컬럼명’)에서 결측치가 있는 행을 삭제합니다.
    • 기본적으로는 결측치가 포함된 행을 제거합니다. 이를 통해 결측치가 있어 데이터를 분석하기 어려운 부분을 정리할 수 있습니다.

따라서 dropna(cols, axis=1)을 사용하시면, dropna 함수는 결측치를 기준으로 동작하기 때문에 ‘cols’라는 실제로 결측치와 관련이 있는 메소드의 사용 법에 맞지 않아 에러가 발생한 것입니다. cols라는 열을 제거하고 싶으시면 drop()을 사용하세요.

다음 유사한 질문 답변들도 도움이 되실 것입니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

망고님의 프로필 이미지
망고
질문자

자세한 설명 감사합니다.

망고님의 프로필 이미지
망고

작성한 질문수

질문하기