inflearn logo
강의

講義

知識共有

Pythonデータ視覚化分析実戦プロジェクト

マラソンデータ加工2

to_timedelta 에러에 관련해서 질문드립니다.

533

Hyeon Kyeong Cho

投稿した質問数 10

0

안녕하세요 강의 잘 듣고 있습니다. 

마라톤 데이터 가공 2 강의를 듣던 중 Step 5단계에서 오류가 발생합니다. 사용하고 있는 파이썬 버전은 3.8.12이고 pandas 버전은 1.3.4입니다. 

 

강의 내용대로 순차적으로 실습 진행 중 Step 5단계에서 오류가 발생하여 Step 5단계의 다른 내용을 모두 주석 후에 

 

marathon_2015_2017['5K'] = pd.to_timedelta(marathon_2015_2017['5K'])

 

이 코드만 실행해 보았는데요 그럼에도 오류가 발생합니다. 혹시나 해서 csv파일을 열어 보았는데 시간데이터 중 '-' 로 표시된 부분이 종종 있었습니다. 제 생각에는 '-'라는 문자가 있으니 null도 아니고 시간데이터도 아니다 보니 문제가 발생하는 것 같은 예감입니다. 

 

아래에 오류 내용을 그대로 첨부하겠습니다.  도움 주시면 감사하겠습니다.

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.array_to_timedelta64()

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.parse_timedelta_string()

ValueError: symbols w/o a number

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
/var/folders/zl/7hy5k6z55zz2b286tv4bbk740000gn/T/ipykernel_48790/1493613945.py in <module>
      6 
      7 # Convert using pandas to_timedelta method
----> 8 marathon_2015_2017['5K'] = pd.to_timedelta(marathon_2015_2017['5K'])
      9 # marathon_2015_2017['10K'] = pd.to_timedelta(marathon_2015_2017['10K'])
     10 # marathon_2015_2017['15K'] = pd.to_timedelta(marathon_2015_2017['15K'])

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/tools/timedeltas.py in to_timedelta(arg, unit, errors)
    122         return arg
    123     elif isinstance(arg, ABCSeries):
--> 124         values = _convert_listlike(arg._values, unit=unit, errors=errors)
    125         return arg._constructor(values, index=arg.index, name=arg.name)
    126     elif isinstance(arg, ABCIndex):

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/tools/timedeltas.py in _convert_listlike(arg, unit, errors, name)
    171 
    172     try:
--> 173         td64arr = sequence_to_td64ns(arg, unit=unit, errors=errors, copy=False)[0]
    174     except ValueError:
    175         if errors == "ignore":

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/arrays/timedeltas.py in sequence_to_td64ns(data, copy, unit, errors)
    989     if is_object_dtype(data.dtype) or is_string_dtype(data.dtype):
    990         # no need to make a copy, need to convert if string-dtyped
--> 991         data = objects_to_td64ns(data, unit=unit, errors=errors)
    992         copy = False
    993 

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/arrays/timedeltas.py in objects_to_td64ns(data, unit, errors)
   1098     values = np.array(data, dtype=np.object_, copy=False)
   1099 
-> 1100     result = array_to_timedelta64(values, unit=unit, errors=errors)
   1101     return result.view("timedelta64[ns]")
   1102 

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.array_to_timedelta64()

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.array_to_timedelta64()

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.convert_to_timedelta64()

/opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.parse_timedelta_string()

ValueError: symbols w/o a number

to_timedelta python pandas

回答 2

0

rhkim79

전 이렇게 했습니다

for col in df.columns[1:]:
    df[col] = pd.to_timedelta(df[col], errors='coerce').astype('m8[s]').astype(np.int64)

0

everpine

저도 지금 강의 듣고 있는데, 똑 같은 에러가 발생했습니다. 혹시 해결 하셨는지요?

 

실습 자료를 다운 받을 수 없습니다.

0

531

2

처음부터 막히네요

1

231

2

vscode에서 folium heatmap 띄우기

0

1179

1

필요한 데이터 뽑을 때 간단한 질문 드립니다

0

258

1

Dual Axis 차트 정렬 관련 질문 드립니다

0

392

1

Column 차트에서 hue 관련 문의 드립니다

0

311

1

크리애플 파일이 어디에 있나요?

0

281

1

Jupyter notebook 오류

0

311

1

201 파일 질문

0

233

1

Year 값을 숫자가 아닌, string으로 입력하는 이유는 무엇인가요?

0

301

1

데이터 concat 후 저장 시 'Year' column 관련 질문

0

222

2

수업 순서가 바뀌어있네요

0

215

2

강의자료

0

338

1

크리애플에서 강의 듣고 있는데 질문이 있어서 문의드립니다.

0

197

1

파이썬 데이타 시각화 ,애니메이션 수업중에 궁금한 부분이 있습니다.

0

262

1

파이챠트 원래 수치 표시

0

311

1

차트생성 관련 질문.

0

196

1

str 변환 설명 더 부탁드려요

0

433

3

4분 47초 문법 질문

0

216

2

GUI에서 그래프가 reset이 안되는 문제

0

566

5

재생이 안돼요

0

750

5

크리애플 사이트에서 리소스를 찾지 못하겠습니다.

0

138

1

자료를 받을 수있는 사이트

0

189

1

map이 나오질 않아요...ㅜ

0

1716

5