커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
Syntax 에러
금융인을 위한 파이썬 업무자동화 v0
3주차
북마크
김*한
댓글
1
추천
0
조회수
11
조회수
11
답변 완료

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

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


앞서 답변해주신 내용대로 코드를 수정해서 실행했는데 다음과 같은 에러가 발생되네요.



C:\Users\kjh29\PycharmProjects\pythonProject2\venv\Scripts\python.exe "C:/Users/kjh29/PycharmProjects/pythonProject2/venv/SPARTA/Pycharm 3주차_과제.py"

 File "C:\Users\kjh29\PycharmProjects\pythonProject2\venv\SPARTA\Pycharm 3주차_과제.py", line 44

  df_result.sort_values(by='차이(남-여)'.ascending = True)

                             ^

SyntaxError: invalid syntax


Process finished with exit code 1

고 계신 화면 전체를 캡처해 주시면, 튜터님들이 빠르게 상황을 이해할 수 있어요.




작성한 코드 및 에러 메세지

print("Hello Dave")
import dart_fss as dart_fss
import pandas as pd
import pprint #세로 출력을 위한..
from pandas import Series, DataFrame

api_key = '8278d1c0e43b1a520fbdc53a0fd9d9133e838924'
dart_fss.set_api_key(api_key=api_key)

# corp_list = dart_fss.get_corp_list()
# corp_list.corps

all=dart_fss.api.filings.get_corp_code()
df=pd.DataFrame(all)
df_listed = df[df['stock_code'].notnull()]
df_non_listed = df[df['stock_code'].isnull()]
df_listed.to_excel('상장종목.xlsx')
df_non_listed.to_excel('비상장종목.xlsx')

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(',',''))
names = list(df_listed.sample(10)['corp_name'])
dfs=[]
for name in names:
    try:
        df=get_salary(name)
        dfs.append(df)
    except:
        print(f'error-{name}')
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)
print(df_result)

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

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

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




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