작성
·
280
·
수정됨
답변 1
0
안녕하세요. 답변 도우미입니다.
우선 아직 자신이 작성한 코드에서 이슈가 있을 때, 어떤 이슈인지 파악하시는 과정이 어색하시다면, 우선은 강의에서 제공해드린 코드를 다운로드 받으셔서 그대로 실행해보시면서 강의와 문법을 파악하시는 것이 더 효과가 좋습니다.
추가로 문의하신 부분에 대해서는
이미지에 있는 코드를 보면, line 48과 line 49에서 pandas의 indexing을 사용하여 payments
데이터프레임에서 데이터를 선택하려고 하고 있습니다.
Line 48에서는 payments[payments.index == 'fa65dad1b0e818e3cc5cb0e39231352']
형식을 사용하고 있습니다. 이는 payments
데이터프레임의 인덱스를 이용하여 특정 인덱스 값을 가진 행을 선택하는 방법입니다. 이 경우 정상적으로 작동합니다.
반면, line 49에서는 payments[payments['order_id'] == 'fa65dad1b0e818e3cc5cb0e39231352']
형식을 사용하고 있습니다. 여기서 payments['order_id']
는 payments
데이터프레임의 'order_id'
열을 선택하고, 그 열에 대해 주어진 조건('order_id'
값이 'fa65dad1b0e818e3cc5cb0e39231352'
인 경우)에 맞는 행을 필터링합니다. 이 방식도 문법적으로는 맞으며, 정상적으로 작동해야 합니다.
Line 49에서 문제가 발생하는 경우는 다음과 같을 수 있습니다:
order_id
열이 payments
데이터프레임에 존재하지 않을 때.
order_id
열의 데이터 타입이 문자열이 아니고, 직접적으로 문자열과 비교를 시도할 때.
payments
데이터프레임이 수정되어 원하는 order_id
값을 포함하고 있지 않을 때.
에러 메시지가 없어서 정확한 문제를 파악하기 어렵지만, 이러한 경우에 해당하는지 확인해보시기 바랍니다.
만약 order_id
열이 존재하고, 올바른 데이터 타입을 가지며, 해당 값이 데이터프레임에 존재한다면, line 49의 코드는 정상적으로 작동해야 합니다. 에러가 발생하는 경우 에러 메시지를 통해 추가적인 단서를 얻을 수 있습니다.