커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
3주차 숙제 - DataFrame.append 함수, Warning 관련
금융인을 위한 파이썬 업무자동화 v0
0주차
북마크
이*구
댓글
1
추천
0
조회수
6
조회수
6
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.



숙제의 get_salary 함수 작성 시 append 함수에 warning이 발생하여 코드를 수정하여 해결 했습니다.


관련하여 2가지 질문이 있습니다.


1. 여기서 append 함수를 써야 하는 특별한 이유가 있나요?

df_result = pd.DataFrame()

df_result = df_result.append(doc, ignore_index=True)


2. 문서를 보고 짜본 아래 2가지 코드는 동일한 결과를 가져오는 것으로 보입니다.

혹시 눈에 보이지 않는 차이가 있을까요?

df_result = pd.concat([pd.DataFrame([doc])], axis=0)

df_result = pd.DataFrame([doc])



스파르타 즉문즉답


작성한 코드 및 에러 메세지


def get_salary(name):

  corp_code = df_listed[df_listed['corp_name'] == name].iloc[0,0]

  data = dart_fss.api.info.emp_sttus(corp_code, '2022', '11011')


  df = pd.DataFrame(data['list'])

  df = df[['corp_name','sexdstn','jan_salary_am']]


  doc = {

      '기업명':name,

      '연봉(남)':df[df['sexdstn'] == '남'].iloc[-1,-1],

      '연봉(여)':df[df['sexdstn'] == '여'].iloc[-1,-1]      

  }


  #df_result = pd.DataFrame()

  #df_result = df_result.append(doc, ignore_index=True)

  #df_result = pd.concat([pd.DataFrame([doc])], axis=0)

  df_result = pd.DataFrame([doc])


  df_result['연봉(남)'] = pd.to_numeric (df_result['연봉(남)'].str.replace(',',''))

  df_result['연봉(여)'] = pd.to_numeric (df_result['연봉(여)'].str.replace(',',''))

  df_result['차이(남-여)'] = df_result['연봉(남)'] - df_result['연봉(여)']

  df_result['평균'] = (df_result['연봉(남)'] + df_result['연봉(여)'])/2


  return df_result


오류 발생 시, 작성한 코드 전체와 에러 메시지를 첨부해 주세요.

Tip 1) </> 아이콘을 눌러 코드박스를 만들어 보세요.

Tip 2) Ctrl+A(맥의 경우 Command+A) 단축키로 코드를 한 번에 선택할 수 있어요!




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴