Python

[Jupyter Notebook] ValueError: Unable to parse string "-" at position 78

xojuholic 2022. 11. 26.
728x90
반응형

오류 원문이다.

ValueError: Unable to parse string "-" at position 78

 

제목의 오류(ValueError: Unable to parse string "-" at position 78)를 불러온 구문은 아래와 같으며 행 번호로는 14번 행이다.

      1 import numpy as np
      2
      3 corp_code = df_listed[df_listed['corp_name'] == '카카오'].iloc[0, 0]
      4 data = dart_fss.api.info.hyslr_sttus(corp_code, '2021', '11011', api_key = None)
      5
      6 df = pd.DataFrame(data['list'])
      7 df = df[['corp_name', 'nm', 'relate', 'bsis_posesn_stock_qota_rt', 'trmend_posesn_stock_qota_rt', 'rm']]
      8
      9 df.columns = ['기업명', '이름', '관계', '기초지분율', '기말지분율', '비고']
     10
     11 #df
     12 #df.dtypes
     13
---> 14 df['기초지분율'] = df['기초지분율'].apply(pd.to_numeric)		# 오류 발생 부분

 

오류의 원인은 DataFrame인 df의 구조가 아래와 같이 되어 있어서 78번 행에서 발생한다.

 

상기 오류를 해결하기 위해 수정한 코드는 아래와 같다.

      1 import numpy as np
      2
      3 corp_code = df_listed[df_listed['corp_name'] == '카카오'].iloc[0, 0]
      4 data = dart_fss.api.info.hyslr_sttus(corp_code, '2021', '11011', api_key = None)
      5
      6
      7 df = pd.DataFrame(data['list'])
      8 df = df[['corp_name', 'nm', 'relate', 'bsis_posesn_stock_qota_rt', 'trmend_posesn_stock_qota_rt', 'rm']]
      9
     10 df.columns = ['기업명', '이름', '관계', '기초지분율', '기말지분율', '비고']
     11
     12 #df
     13 #df.dtypes
     14
---> 15 df['기초지분율'] = pd.to_numeric(df['기초지분율'].str.replace('-', ''))	# 수정한 코드

 

728x90
반응형
SMALL

댓글

💲 추천 글