• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

.dt에서 어트리뷰트 에러발생

19.09.08 20:08 작성 조회수 5.4k

2

train["year"] = train["datetime"].dt.year

train["month"] = train["datetime"].dt.month

train["day"] = train["datetime"].dt.day

train["hour"] = train["datetime"].dt.hour

train["minute"] = train["datetime"].dt.minute

train["second"] = train["datetime"].dt.second

train.shape

선생님 강의를 따라서 진행하는 중에 이 부분에서 아래와 같이 어트리뷰트 에러가 났었습니다.

AttributeError: Can only use .dt accessor with datetimelike values

train.csv로 부터 가져온 데이터프레임의 datetime칼럼의

서식타입이 아마도 판다스가 인식하는 Datetime타입과 다른건가 하는 생각으로 아래의 코드를 우선적으로 실행하니 에러가 사라졌습니다.

train["datetime"] = pd.to_datetime(train["datetime"])

그런데 선생님 강의의 6:03에서는 이 코드 없이도 전혀 문제없이 잘 실행되는 것을 보고나니 그 원인이 알쏭달쏭 합니다. 저는 윈도우에서 실행했어요.

답변 1

답변을 작성해보세요.

1

안녕하세요. 저는 데이터를 불러올 때 다음의 코드로 불러와서 datetime 형식으로 데이터가 로드 되었어요.

아마  parse_dates=["datetime"] 이 부분을 깜박하셨을거 같아요.

train = pd.read_csv("data/train.csv", parse_dates=["datetime"])