해결된 질문
작성
·
104
0
File "<input>", line 1, in <module>
File "C:/Users/jungsuk.hahn/PycharmProjects/recommendation_system/01_lecture.py", line 158, in score
y_pred = np.array([model(user, movie) for (user, movie) in id_pairs])
File "C:/Users/jungsuk.hahn/PycharmProjects/recommendation_system/01_lecture.py", line 158, in <listcomp>
y_pred = np.array([model(user, movie) for (user, movie) in id_pairs])
File "<string>", line 3, in cf_gender
AttributeError: 'int' object has no attribute 'loc'
위와 같은 error 발생합니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
제공된 정보와 직접적으로 관련된 구체적인 해결 방안을 제시하지 못하지만, 문제의 내용을 바탕으로 일반적인 조언을 드릴 수 있습니다.
‘AttributeError: ‘int’ object has no attribute ‘loc” 오류는 일반적으로 pandas DataFrame에 접근하려고 할 때 발생합니다. loc
는 pandas DataFrame에서 사용하는 메서드인데, 정수형 객체에 이 메서드를 사용하려고 하면 위와 같은 오류가 발생합니다.
이 오류는 cf_gender
함수 내에서 model(user, movie)
호출 결과 또는 id_pairs
각 항목을 처리하는 과정에서 DataFrame의 특정 위치에 접근하려고 할 때 정수형(int) 객체가 반환되어 발생할 수 있습니다.
문제 해결을 위해 다음을 확인해보시기 바랍니다:
- model
함수 또는 cf_gender
함수가 DataFrame에서 특정 데이터를 접근하려는 로직이 올바르게 구현되었는지 확인하세요.
- user
와 movie
변수의 데이터 타입과, 이를 사용하여 DataFrame에 접근하는 부분의 로직을 점검해보세요.
- id_pairs
의 각 항목이 올바르게 (user, movie)
형태로 구성되어 있으며, 이들이 기대하는 데이터 타입과 일치하는지 확인하세요.
해당 오류 메시지는 cf_gender
함수 내에서 발생하므로, 이 함수에서 DataFrame을 접근하는 방식을 재검토해보시는 것이 좋습니다. 만약 DataFrame에 접근해야 한다면, loc
메서드를 사용하기 전에 해당 객체의 타입이 실제로 DataFrame인지 확인해 보세요.
추가적으로, 코드를 더 자세히 살펴보고, 이 부분에서 DataFrame을 바르게 처리하고 있는지 검토하는 것이 중요합니다. 문제가 계속되면, 해당 코드와 함께 자세한 상황을 다시 질문해 주세요.