
3주차 마지막 강의 이어서 과제 진행을 했구요.
고민하다가 답을 보고 진행했는데 오류가 나네용


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, '2021', '11011')
df = pd.DataFrame(data['list'])
df = df[['corp_name','sexdstn','jan_salary_am']]
df_result = pd.DataFrame()
doc = {
'기업명' : name,
'연봉(남)' : df[df['sexdstn'] == '남'].iloc[-1,-1],
'연봉(여)' : df[df['sexdstn'] == '여'].iloc[-1,-1]
}
df_result = df_result.append(doc, ignore_index = True)
df_result['연봉(남)'] = pd.to_numeric(df_result['연봉(남)'].str.replace(',',''))
df_result['연봉(여)'] = pd.to_numeric(df_result['연봉(여)'].str.replace(',',''))
return df_result
corp_codes = list(df_listed.sample(10)['corp_code'])
dfs = []
for corp_code in corp_codes:
try:
df = get_salary(corp_code)
dfs.append(df)
except:
print(f'error - {corp_code}')
df_result = pd.concat(dfs)
df_result['차이(남-여)'] = df_result['연봉(남)'] - df_result['연봉(여)']
df_result['평균'] = (df_result['연봉(남)']+df_result['연봉(여)'])/2
df_result.sort_values(by='차이(남-여)',ascending=True)
