
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
corp_code = df_listed[df_listed['corp_name'] == '클래시스'].iloc[0,0]
data = dart_fss.api.info.hyslr_sttus(corp_code,'2024','11012')
df=pd.DataFrame(data['list'])
df = df[['corp_name','nm','relate','bsis_posesn_stock_qota_rt','trmend_posesn_stock_qota_rt','rm']]
df.columns = ['기업명','이름','관계','기초지분율','기말지분율','비고']
df['기초지분율'] = pd.to_numeric(df['기초지분율'])
df['기말지분율'] = pd.to_numeric(df['기말지분율'])
df.sort_values(by='기초지분율',ascending=False).head(3)
df
위의 코드로 Relate가 Nan으로 표기되는 값이 있을 경우에 강의에서는 Nan 값도 있는 상태로 결과값이 나왔지만,
실제로 해본 결과 에러 코드가 뜹니다.
#Nan으로 표기되는 값은 빼고 처리한
df = df[df['관계'].notnull()]
df['기초지분율'] = pd.to_numeric(df['기초지분율'])
df['기말지분율'] = pd.to_numeric(df['기말지분율'])
df.sort_values(by='기초지분율',ascending=False).head(3)
Nan값을 제거한 코드는 실행이 되는데, Nan 값이 있는 채로 data를 뽑으려면, 어떻게 코드를 수정해야하나요?

작성한 코드 및 에러 메세지
ValueError Traceback (most recent call last)
lib.pyx in pandas._libs.lib.maybe_convert_numeric()
ValueError: Unable to parse string "-"
During handling of the above exception, another exception occurred:
ValueError Traceback (most recent call last)
<ipython-input-34-29f9ec66d11e> in <cell line: 13>()
11 df.columns = ['기업명','이름','관계','기초지분율','기말지분율','비고']
12
---> 13 df['기초지분율'] = pd.to_numeric(df['기초지분율'])
14 df['기말지분율'] = pd.to_numeric(df['기말지분율'])
15
/usr/local/lib/python3.10/dist-packages/pandas/core/tools/numeric.py in to_numeric(arg, errors, downcast, dtype_backend)
220 coerce_numeric = errors not in ("ignore", "raise")
221 try:
--> 222 values, new_mask = lib.maybe_convert_numeric( # type: ignore[call-overload] # noqa: E501
223 values,
224 set(),
lib.pyx in pandas._libs.lib.maybe_convert_numeric()
ValueError: Unable to parse string "-" at position 1
