• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

apply axis 관련 질문

23.10.17 02:50 작성 조회수 156

0

섹션7-2 5분 2초 apply부분에 apply(func, axis = 0)으로 하면 왜 '영어' 행이 하나 더 생기나요? 

답변 1

답변을 작성해보세요.

0

안녕하세요. 답변 도우미입니다.

apply() 함수를 Pandas에서 사용하면 DataFrame의 행이나 열에 대해 어떤 함수를 적용할 수 있어요. axis=0은 컬럼을 따라 함수를 적용하라는 의미고, axis=1은 행을 따라 적용하라는 것이죠.

영어 행이하나 더 생기는 이유는 먼저, func(df_data) 함수에서 df_data['영어'] = 80 이라고 하면, 함수가 호출되는 모든 객체(행 또는 열)에 '영어'라는 키와 값 80을 추가하려고 시도합니다.

axis=0 설정으로 apply() 함수를 호출하면, 함수는 각 컬럼에 대해 동작하게 됩니다. '영어'와 '수학' 컬럼을 각각 처리하죠. 이 때, '영어' 컬럼이 처리되면서 '영어'라는 키가 다시 추가되어 버리고, 그 결과 원래 있던 '영어' 컬럼과 겹치게 되어 이상한 형태의 DataFrame이 반환됩니다.

감사합니다.